diff --git a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po index 2b47dfaa33..51b15ec237 100644 --- a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Arabic\n" "Language: ar_SA\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "نقطة نهاية API غير موجودة" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "المستخدم ليس لديه الصلاحية لعرض هذا النموذج" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "البريد الإلكتروني (مرة أخرى)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "تأكيد البريد الإلكتروني" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "يجب عليك كتابة نفس البريد الإلكتروني كل مرة." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "تسجيل MFA معطل." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "عنوان البريد الإلكتروني الرئيسي المقدم غير صالح." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "لم تتم الموافقة على نطاق البريد الإلكتروني المقدم." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "التسجيل معطل." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "تعذّر تحويل {original} إلى {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "الكمية المقدمة غير صحيحة" @@ -100,14 +92,14 @@ msgstr "أدخل التاريخ" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "ملاحظات" @@ -120,42 +112,42 @@ msgstr "القيمة '{name}' لا تظهر في تنسيق النمط" msgid "Provided value does not match required pattern: " msgstr "القيمة المقدمة لا تتطابق مع النمط المطلوب: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "سلسلة الرقم التسلسلي فارغة" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "تكرار التسلسل" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "نطاق المجموعة {group} يتجاوز الكَمّيَّة المسموح بها ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "لم يتم العثور على أرقام متسلسلة" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "عدد الأرقام المسلسلة الفريدة ({len(serials)}) يجب أن يتطابق مع الكمية ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "إزالة علامات HTML من هذه القيمة" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "البريد الإلكتروني" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po index 7027ad4521..6368c0e54d 100644 --- a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Language: bg_BG\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Не е намерена крайна точка на API" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Потребителя няма нужното разрешение, за да вижда този модел" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Е-поща отново" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Потвърждение на електронната поща" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Трябва ла въведете една и съща електронна поща." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Въведената основна електронна поща е невалидна." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Въведеният домейн на електронната поща не е утвърден." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Регистрацията е деактивирана." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Преобразуването на {original} в {unit} не беше успешно" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Въведена е недопустима стойност" @@ -100,14 +92,14 @@ msgstr "Въведи дата" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Бележки" @@ -120,42 +112,42 @@ msgstr "Значението '{name}' не отговаря на шаблона" msgid "Provided value does not match required pattern: " msgstr "Въведеното значение не отговаря на задължителния шаблон: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Липсва сериен номер" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Повтарящ се сериен номер" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Не са открити серийни номера" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Премахнете HTML маркерите от тази стойност" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Китайски (опростен)" msgid "Chinese (Traditional)" msgstr "Китайски (традиционен)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Част" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Потребител" @@ -1594,7 +1543,7 @@ msgstr "Потребител" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Цялостна наличност" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Място в склада" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Места в склада" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po index 0640e27727..e6545b66be 100644 --- a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint nebyl nalezen" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Zadán neplatný seznam položek" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Poskytnuty neplatné filtry" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "Nebyly nalezeny žádné položky k odstranění" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Uživatel nemá právo zobrazit tento model" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "Ověřovací e-mail byl odeslán." - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (znovu)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Potvrzení emailové adresy" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Pokaždé musíte zadat stejný email." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Registrace s vícefaktorovým ověřováním je zakázána." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Zadaná primární e-mailová adresa je neplatná." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Zadaná e-mailová doména není povolena." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registrace vypnuta." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nelze převést {original} na {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Vyplněno neplatné množství" @@ -100,14 +92,14 @@ msgstr "Zadejte datum" msgid "Invalid decimal value" msgstr "Neplaté desetinné číslo" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Poznámky" @@ -120,42 +112,42 @@ msgstr "Hodnota '{name}' neodpovídá formátu vzoru" msgid "Provided value does not match required pattern: " msgstr "Poskytnutá hodnota neodpovídá požadovanému vzoru: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "Nelze serializovat více než 1000 položek najednou" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Nevyplněné výrobní číslo" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplicitní výrobní číslo" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Neplatná skupina: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rozsah skupiny {group} překračuje povolené množství ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nenalezena žádná výrobní čísla" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Počet jedinečných sériových čísel ({len(serials)}) musí odpovídat množství ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Odstranit HTML tagy z této hodnoty" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "Data obsahují zakázaný markdown obsah" @@ -343,11 +335,11 @@ msgstr "Čínština (zjednodušená)" msgid "Chinese (Traditional)" msgstr "Čínština (tradiční)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Přihlásit se do aplikace" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-mail" @@ -368,247 +360,205 @@ msgstr "Metadata pluginu" msgid "JSON metadata field, for use by external plugins" msgstr "Pole metadat JSON pro použití externími pluginy" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Nesprávně naformátovaný vzor" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Neznámý formát klíče" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Chybí požadovaný klíč" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referenční pole nemůže být prázdné" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referenční číslo musí odpovídat požadovanému vzoru" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referenční číslo je příliš velké" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Duplicitní názvy nemohou existovat pod stejným nadřazeným názvem" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Neplatný výběr" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Název" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Popis" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Popis (volitelně)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Cesta" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Poznámky (volitelné)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Data čárového kódu" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Data čárového kódu třetí strany" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash čárového kódu" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Jedinečný hash dat čárového kódu" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Nalezen existující čárový kód" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Selhání úlohy" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "Úloha na pozadí '{f}' se ani po {n} pokusech nezdařila" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Chyba serveru" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Server zaznamenal chybu." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Musí být platné číslo" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Měna" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Vyberte měnu z dostupných možností" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Uživatelské jméno" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Křestní jméno" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Křestní jméno uživatele" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Příjmení" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Příjmení uživatele" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Emailová adresa uživatele" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personál" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Má tento uživatel oprávnění personálu" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Super-uživatel" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Je tento uživatel superuživatel" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktivní" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Je tento uživatelský účet aktivní" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Nemáte oprávnění měnit tuto uživatelskou roli." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Pouze superuživatelé mohou vytvářet nové uživatele" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Váš účet byl vytvořen." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Pro přihlášení použijte funkci obnovení hesla" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Vítejte v InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Neplatná hodnota" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datový soubor" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Vyberte datový soubor k nahrání" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Nepodporovaný formát souboru" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Soubor je příliš velký" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "V souboru nebyly nalezeny žádné sloupce" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "V souboru nebyly nalezeny žádné řádky s daty" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nebyly zadány žádné řádky s daty" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nebyly zadány žádné sloupce s daty" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Chybí povinný sloupec: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplicitní sloupec: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Vzdálený obraz" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL souboru vzdáleného obrázku" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Stahování obrázků ze vzdálené URL není povoleno" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Nepodařilo se stáhnout obrázek ze vzdálené adresy URL" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Nadřazená sestava" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Zahrnout varianty" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Zahrnout varianty" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Zahrnout varianty" msgid "Part" msgstr "Díl" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategorie" @@ -739,16 +688,16 @@ msgstr "Dokončeno po" msgid "Build must be cancelled before it can be deleted" msgstr "Sestavení musí být zrušeno před odstraněním" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Spotřební materiál" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Volitelné" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Sestava" @@ -756,7 +705,7 @@ msgstr "Sestava" msgid "Tracked" msgstr "Sledováno" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testovatelné" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Přiděleno" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Dostupné" msgid "Build Order" msgstr "Výrobní příkaz" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Výrobní příkazy" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Referenční číslo výrobního příkazu" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referenční číslo prodejní objednávky" msgid "SalesOrder to which this build is allocated" msgstr "Prodejní objednávka, které je tento výrobní příkaz přidělen" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Zdrojové umístění" @@ -887,17 +836,17 @@ msgstr "Stav sestavení" msgid "Build status code" msgstr "Stavový kód sestavení" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Kód dávky" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Dávkový kód pro tento výstup sestavení" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Datum vytvoření" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Uživatel, který vystavil tento výrobní příkaz" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odpovědný" @@ -947,7 +896,7 @@ msgstr "Uživatel nebo skupina odpovědná za tento výrobní příkaz" msgid "External Link" msgstr "Externí odkaz" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Odkaz na externí URL" @@ -982,7 +931,7 @@ msgstr "Výrobní příkaz {build} byl dokončen" msgid "A build order has been completed" msgstr "Výrobní příkaz byl dokončen" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "U sledovatelných dílů musí být uvedena sériová čísla" @@ -998,18 +947,18 @@ msgstr "Výstup sestavení je již dokončen" msgid "Build output does not match Build Order" msgstr "Výstup neodpovídá výrobnímu příkazu" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Množství musí být vyšší než nula" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Množství nemůže být větší než výstupní množství" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Výstup sestavy {serial} neprošel všemi požadavky" @@ -1022,11 +971,11 @@ msgstr "Řádková položka výrobního příkazu" msgid "Build object" msgstr "Vytvořit objekt" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Množství musí být 1 pro zřetězený sklad" msgid "Selected stock item does not match BOM line" msgstr "Vybraná skladová položka neodpovídá řádku kusovníku" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Skladové položky" @@ -1094,366 +1043,366 @@ msgstr "Instalovat do" msgid "Destination stock item" msgstr "Cílová skladová položka" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Název dílu" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Vytvořit výstup" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Vytvořený výstup neodpovídá nadřazenému sestavení" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Výstupní díl se neshoduje s dílem výrobního příkazu" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Výstup sestavení je již dokončen" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Tento stavební výstup není plně přiřazen" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Zadejte množství pro výstup sestavení" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Celé množství požadované pro sledovatelné díly" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Je vyžadována celočíselná hodnota množství, protože kusovník obsahuje sledovatelné díly" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Sériová čísla" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Zadejte sériová čísla pro sestavení výstupů" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Lokace" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Skladové umístění pro výstup sestavy" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Automaticky zvolit sériová čísla" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automaticky přidělit požadované položky s odpovídajícími sériovými čísly" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Následující sériová čísla již existují nebo jsou neplatná" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Musí být uveden seznam výstupů sestavy" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Skladové umístění pro sešrotované výstupy" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Zahodit alokace" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Vyřadit všechny přidělené zásoby pro vyřazené výstupy" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Důvod vyřazení výstupu(ů) sestavy" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Umístění dokončených výstupů sestavy" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Stav" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Přijmout neúplné přidělení" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Dokončit výstupy pokud zásoby nebyly plně přiděleny" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Spotřebovat přidělené zásoby" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Spotřebovat všechny zásoby, které již byly přiděleny této sestavě" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Odstranit neúplné výstupy" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Odstranit všechny výstupy sestavy, které nebyly dokončeny" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Není povoleno" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Přijmout jako spotřebované tímto výrobním příkazem" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Uvolnit před dokončením tohoto výrobního příkazu" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Nadměrně přidělené zásoby" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Jak chcete zacházet s extra skladovými položkami přiřazenými k tomuto výrobnímu příkazu" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Některé skladové položky byly nadměrně přiděleny" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Přijmout nepřidělené" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Přijmout, že skladové položky nebyly plně přiřazeny k tomuto výrobnímu příkazu" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Požadované zásoby nebyly plně přiděleny" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Přijmout neúplné" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Přijmout, že nebyl dokončen požadovaný počet výstupů sestavy" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Požadované množství sestavy nebylo dokončeno" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Výrobní příkaz má neúplné výstupy" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Linka sestavy" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Výstup sestavy" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Výstup sestavy musí odkazovat na stejnou sestavu" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Řádková položka sestavy" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part musí ukazovat na stejný díl jako výrobní příkaz" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Položka musí být skladem" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Dostupné množství ({q}) překročeno" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Pro přidělení sledovaných dílů musí být zadán výstup sestavy" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Výstup sestavy nelze zadat pro přidělení nesledovaných dílů" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Položky přidělení musí být poskytnuty" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Skladové místo, odkud se mají díly odebírat (ponechte prázdné, pokud chcete odebírat z libovolného místa)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Vynechat lokace" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Vyloučit skladové položky z tohoto vybraného umístění" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Zaměnitelné zásoby" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Skladové položky na více místech lze používat zaměnitelně" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Náhradní zásoby" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Povolit přidělování náhradních dílů" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Volitelné položky" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Přiřazení volitelných položek kusovníku k objednávce sestavy" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Nepodařilo se spustit úlohu automatického přidělování" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "Reference v kusovníku" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "ID dílu kusovníku" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "Název dílu kusovníku" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Díl dodavatele" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Přidělené množství" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Název kategorie dílů" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Sledovatelné" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Povolit varianty" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Položka kusovníku" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Přidělené zásoby" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Na objednávku" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "Ve výrobě" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Externí zásoby" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Dostupné zásoby" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Zrušeno" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Hotovo" @@ -1583,10 +1532,10 @@ msgstr "Klíčový text musí být jedinečný" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Uživatel" @@ -1594,7 +1543,7 @@ msgstr "Uživatel" msgid "Price break quantity" msgstr "Množství cenové slevy" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Cena" @@ -1619,7 +1568,7 @@ msgstr "Název tohoto webhooku" msgid "Is this webhook active" msgstr "Je tento webhook aktivní" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "Byla práce na této zprávě dokončena?" msgid "Id" msgstr "ID" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Název" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Odkaz" @@ -1715,11 +1664,10 @@ msgstr "Přečteno" msgid "Was this news item read?" msgstr "Byla tato novinka přečtena?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Obrazek" @@ -1767,7 +1715,7 @@ msgstr "Definice" msgid "Unit definition" msgstr "Definice jednotky" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Příloha" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Hodnota" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Název stavu" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "Barva" msgid "Color that will be displayed in the frontend" msgstr "Barva, která bude zobrazena ve frontendu" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Data" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Výsledek" @@ -2165,1065 +2113,1081 @@ msgstr "Uživatel nemá oprávnění k vytváření nebo úpravám příloh pro msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Žádná skupina" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "Adresa URL webu je uzamčena konfigurací" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Je vyžadován restart" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Bylo změněno nastavení, které vyžaduje restart serveru" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Nevyřízené migrace" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Počet nevyřízených migrací databáze" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Název instance serveru" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Textový popisovač pro instanci serveru" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Použít název instance" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Použít název instance v liště" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Omezit zobrazování `o aplikaci`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Zobrazovat okno `o aplikaci` pouze superuživatelům" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Jméno společnosti" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Interní název společnosti" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Základní URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Základní URL pro instanci serveru" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Výchozí měna" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Vyberte základní měnu pro cenové kalkulace" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Podporované měny" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Seznam podporovaných kódů měn" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Interval aktualizace měny" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Jak často aktualizovat směnné kurzy (pro vypnutí nastavte na nulu)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dny" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Plugin aktualizace měny" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Plugin pro aktualizaci měn k použití" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Stáhnout z URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Povolit stahování vzdálených obrázků a souborů z externích URL" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Limit velikosti stahování" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maximální povolená velikost stahování vzdáleného obrázku" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-agent použitý ke stažení z adresy URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Povolit přepsání user-agenta používaného ke stahování obrázků a souborů z externí adresy URL (ponechte prázdné pro výchozí)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Přísná validace URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Vyžadovat specifikaci schématu při ověřování adres URL" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Interval kontroly aktualizací" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Jak často kontrolovat aktualizace (nastavte na nulu pro vypnutí)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatické Zálohování" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Povolit automatické zálohování databáze a mediálních souborů" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Interval automatického zálohování" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Zadejte počet dní mezi automatickými zálohovými událostmi" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Interval mazání úloh" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Výsledky úloh na pozadí budou odstraněny po zadaném počtu dní" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Interval odstranění protokolu chyb" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Záznamy chyb budou odstraněny po zadaném počtu dní" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Interval pro odstranění oznámení" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Uživatelská oznámení budou smazána po zadaném počtu dní" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Podpora čárových kódů" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Povolit podporu pro skenování čárových kódů ve webovém rozhraní" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Ukládat výsledky čárových kódů" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Ukládat výsledky skenování čárových kódů v databázi" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Maximální počet naskenovaných čárových kódů" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Maximální počet uložených výsledků skenování čárových kódů" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Zpoždění vstupu čárového kódu" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Doba zpoždění zpracování vstupu čárového kódu" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Podpora webové kamery pro čárové kódy" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Povolit skenování čárových kódů přes webovou kameru v prohlížeči" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Zobrazovat data čárových kódů" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Zobrazovat data čárových kódů v prohlížeči jako text" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Plugin pro generování čárových kódů" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Revize dílu" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Povolit pole revize pro díl" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "Revize pouze pro sestavy" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "Povolit revize pouze pro sestavy" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Povolit odstranění ze sestavy" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Povolit odstranění dílů, které jsou použity v sestavě" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN Regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulární vzorec výrazu pro odpovídající IPN dílu" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Povolit duplicitní IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Povolit více dílům sdílet stejný IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Povolit editaci IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Povolit změnu IPN při úpravách dílu" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Kopírovat data BOM dílu" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopírovat data BOM ve výchozím nastavení při duplikování dílu" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Kopírovat data parametrů dílu" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Kopírovat data parametrů ve výchozím nastavení při duplikování dílu" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Kopírovat zkušební data dílu" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Kopírovat testovací data ve výchozím nastavení při duplikování dílu" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kopírovat šablony parametrů kategorie" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kopírování šablon parametrů kategorie při vytváření dílu" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Šablona" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Díly jsou ve výchozím nastavení šablony" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Díly lze ve výchozím nastavení sestavit z jiných komponentů" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponent" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Díly lze ve výchozím nastavení použít jako dílčí komponenty" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Možné zakoupit" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Díly jsou zakoupitelné ve výchozím nastavení" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Prodejné" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Díly jsou prodejné ve výchozím nastavení" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Díly jsou sledovatelné ve výchozím nastavení" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Nehmotné (virtuální)" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Díly jsou nehmotné (virtuální) ve výchozím nastavení" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Zobrazit Import v zobrazeních" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Zobrazit průvodce importem v některých zobrazeních dílu" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Zobrazit související díly" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Zobrazit související díly pro díl" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Počáteční údaje zásob" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Povolit vytvoření počátečního skladu při přidání nové části" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Počáteční údaje dodavatele" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Povolit vytvoření počátečních dat dodavatele při přidávání nového dílu" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Formát zobrazení jména dílu" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formát pro zobrazení názvu dílu" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Výchozí ikona kategorie dílu" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Výchozí ikona kategorie dílu (prázdné znamená bez ikony)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Vynutit jednotky parametru" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Pokud jsou uvedeny jednotky, musí hodnoty parametrů odpovídat zadaným jednotkám" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Minimální počet desetinných míst u cen" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimální počet desetinných míst k zobrazení u cenových údajů" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Maximální počet desetinných míst u cen" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximální počet desetinných míst k zobrazení u cenových údajů" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Použít ceny dodavatele" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Zahrnout cenová zvýhodnění dodavatelů do celkových cenových kalkulací" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Přepsání historie nákupu" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historické ceny nákupních objednávek mají přednost před cenovými zvýhodněními dodavatele" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Použít ceny skladových položek" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Použít ceny z ručně zadaných skladových údajů pro cenové kalkulace" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Stáří cen skladových položek" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Vyloučit skladové položky starší než tento počet dní z cenových kalkulací" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Použít cenu varianty" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Zahrnutí cen variant do celkových cenových kalkulací" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Pouze aktivní varianty" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Pro výpočet ceny varianty použijte pouze aktivní díly varianty" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Interval přestavby cen" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Počet dní před automatickou aktualizací cen dílů" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interní ceny" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Povolit interní ceny pro díly" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Přepis interní ceny" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Pokud jsou k dispozici, interní ceny mají přednost před výpočty cenového rozpětí" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Povolit tisk štítků" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Povolit tisk štítků z webového rozhraní" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "DPI rozlišení štítků" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Rozlišení DPI při generování obrazových souborů, které se dodávají do zásuvných modulů pro tisk štítků" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Povolit reporty" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Povolit generování reportů" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Režim ladění chyb" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Generovat reporty v režimu ladění (HTML výstup)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Zaznamenávat chyby reportů" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Zaznamenávat chyby, které se vyskytnou při vytváření reportů" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Velikost stránky" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Výchozí velikost stránky pro PDF reporty" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Globálně unikátní sériová čísla" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Sériová čísla pro skladové položky musí být globálně unikátní" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Automaticky vyplnit sériová čísla" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Automaticky vyplnit sériová čísla ve formulářích" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Odstranit vyčerpané zásoby" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Určuje výchozí chování při vyčerpání zásoby položky" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Šablona kódu dávky" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Šablona pro generování výchozích kódů dávky pro skladové položky" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Expirace zásob" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Povolit funkci expirace zásob" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Prodat prošlé zásoby" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Povolit prodej prošlých zásob" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Čas stáří zásob" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Počet dnů, po které jsou skladové položky považovány za nevyužité před uplynutím doby expirace" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Sestavit prošlé zásoby" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Povolit sestavování s prošlými zásobami" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Kontrola vlastnictví zásob" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Umožnit kontrolu vlastnictví nad skladovými místy a položkami" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Výchozí ikona umístění zásob" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Výchozí ikona umístění zásob (prázdné znamená bez ikony)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Zobrazit nainstalované skladové položky" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Zobrazit nainstalované skladové položky ve skladových tabulkách" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Zkontrolovat BOM při instalaci položek" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Nainstalované skladové položky musí existovat v BOM pro nadřazený díl" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Povolit převod mimo sklad" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Umožnit přesun skladových položek, které nejsou na skladě, mezi skladovými místy" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Referenční vzor objednávky sestavy" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole Objednávka sestavy" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Vyžadovat odpovědného vlastníka" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Ke každé objednávce musí být přiřazen odpovědný vlastník" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Vyžadovat aktivní díl" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Zabránit vytváření výrobních příkazů pro neaktivní díly" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "Vyžadovat schválený kusovník" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Zabránit vytváření výrobních příkazů, dokud není schválen kusovník" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Blokovat, dokud testy neprojdou" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Zabránit dokončení výstupů sestavy, dokud neprojdou všechny požadované testy" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Povolit vracení objednávek" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Povolit funkci vrácení objednávky v uživatelském rozhraní" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Referenční vzor návratové objednávky" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Požadovaný vzor pro vygenerování referenčního pole Návratová objednávka" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Úprava dokončených návratových objednávek" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Umožnit úpravu návratových objednávek po jejich dokončení" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Referenční vzor prodejní objednávky" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole prodejní objednávky" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Výchozí přeprava prodejní objednávky" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Povolit vytvoření výchozí přepravy s prodejními objednávkami" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Úprava dokončených prodejních objednávek" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Umožnit úpravy prodejních objednávek po jejich odeslání nebo dokončení" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Označit odeslané objednávky jako dokončené" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Prodejní objednávky označené jako odeslané se automaticky dokončí a obejdou stav „odesláno“" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Referenční vzor nákupní objednávky" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole nákupní objednávky" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Úprava dokončených nákupních objednávek" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Umožnit úpravy nákupních objednávek po jejich odeslání nebo dokončení" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Automatické dokončování nákupních objednávek" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automaticky označit nákupní objednávky jako kompletní, jakmile jsou přijaty všechny řádkové položky" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Povolit pole zapomenutého hesla" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Povolení funkce zapomenutého hesla na přihlašovacích stránkách" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Povolit registrace" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Povolit samoregistraci uživatelů na přihlašovacích stránkách" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Povolit SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Povolit SSO na přihlašovacích stránkách" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Povolit SSO registraci" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Povolit samoregistraci uživatelů prostřednictvím SSO na přihlašovacích stránkách" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Vyžadován e-mail" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Požadovat, aby uživatel při registraci zadal e-mail" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Automaticky vyplnit SSO uživatele" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automaticky vyplnit údaje o uživateli z údajů o účtu SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Mail dvakrát" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Při registraci dvakrát požádat uživatele o zadání e-mailu" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Heslo dvakrát" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Při registraci dvakrát požádat uživatele o heslo" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Povolené domény" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Omezit registraci na určité domény (oddělené čárkou a začínající @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Skupina při registraci" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Vynutit MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Uživatelé musí používat vícefaktorové zabezpečení." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Zkontrolovat pluginy při spuštění" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Zkontrolujte, zda jsou při spuštění nainstalovány všechny pluginy - povolit v kontejnerových prostředích" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Zkontrolovat aktualizace pluginů" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Povolit pravidelné kontroly aktualizací nainstalovaných pluginů" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Povolit integraci URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Povolit plug-inům přidávat trasy URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Povolit integraci navigace" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Povolit integrování pluginů do navigace" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Povolit integraci aplikací" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Povolit pluginům přidávát aplikace" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Povolit integraci plánu" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Povolit pluginům spouštění naplánovaných úloh" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Povolit integraci událostí" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Povolit pluginům reagovat na interní události" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funkce inventury" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Povolit funkci inventury pro evidenci stavu zásob a výpočet hodnoty zásob" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Vyloučit externí umístění" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Vyloučit skladové položky na externích místech z výpočtů inventury" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Perioda automatické inventury" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Počet dní mezi automatickým záznamem inventury (pro vypnutí nastavte nulu)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Interval mazání reportů" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Reporty o inventuře se po určitém počtu dní vymažou" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Zobrazit celá jména uživatelů" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Zobrazit plná jména uživatelů namísto uživatelských jmen" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Povolit data zkušební stanice" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Povolit sběr dat ze zkušební stanice pro výsledky testů" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "Interní díl je aktivní" msgid "Supplier is Active" msgstr "Dodavatel je aktivní" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Výrobce" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Společnost" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Odkaz na informace o adrese (externí)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Výrobce dílu" @@ -3744,8 +3708,8 @@ msgstr "Zvolte díl" msgid "Select manufacturer" msgstr "Vyberte výrobce" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "MPN" @@ -3773,7 +3737,7 @@ msgstr "Název parametru" msgid "Parameter value" msgstr "Hodnota parametru" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Jednotky" @@ -3793,11 +3757,11 @@ msgstr "Jednotky balení musí být větší než nula" msgid "Linked manufacturer part must reference the same base part" msgstr "Odkazovaný díl výrobce musí odkazovat na stejný základní díl" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Dodavatel" @@ -3805,7 +3769,7 @@ msgstr "Dodavatel" msgid "Select supplier" msgstr "Vyberte dodavatele" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Skladová evidence dodavatele" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Popis dílu dodavatele" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Popis dílu dodavatele" msgid "Note" msgstr "Poznámka" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "základní cena" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimální poplatek (např. poplatek za skladování)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Balení" @@ -3861,7 +3825,7 @@ msgstr "Počet kusů v balení" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Celkové množství dodávané v jednom balení. Pro jednotlivé položky ponechte prázdné." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "více" @@ -3885,15 +3849,15 @@ msgstr "Datum poslední aktualizace údajů o dostupnosti" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Výchozí měna používaná pro tohoto dodavatele" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Jméno společnosti" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Skladem" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Klíč" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datový soubor" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "Chyby" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Množství musí být kladné" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Zákazník" @@ -4835,11 +4803,11 @@ msgstr "Sloučit položky" msgid "Merge items with the same part, destination and target date into one line item" msgstr "Sloučit položky se stejným dílem, místem určení a cílovým datem do jedné řádkové položky" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "Číslo zboží (SKU)" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Interní číslo dílu" @@ -4879,7 +4847,7 @@ msgstr "Vyberte cílové umístění pro přijaté položky" msgid "Enter batch code for incoming stock items" msgstr "Zadat kód šarže pro příchozí skladové položky" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Stavový kód skladové položky" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Schválit celý kusovník" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "Je revizí" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "Má revize" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "Kusovník schválen" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Kategorie dílu" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Kategorie dílů" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Výchozí umístění" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Výchozí umístění dílů v této kategorii" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Strukturální" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Díly nesmějí být přímo zařazeny do strukturální kategorie, ale mohou být zařazeny do jejích podkategorií." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Výchozí klíčová slova" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Výchozí klíčová slova pro díly v této kategorii" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ikona" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ikona (volitelná)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Díly" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "Tento díl nelze odstranit, protože je použit v sestavě" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Díl '{self}' nelze použít v kusovníku '{parent}' (rekurzivní)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Díl '{parent}' je využit v kusovníku '{self}' (rekurzivní)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "Revize jsou povoleny pouze pro sestavy" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Skladová položka s tímto sériovým číslem již existuje" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Název dílu" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Je šablonou" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Klíčová slova" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Klíčová slova dílu pro zlepšení vyhledávání" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Kategorie dílu" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Číslo revize nebo verze dílu" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revize" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Výchozí dodavatel" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Výchozí díl dodavatele" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Lze tento díl sestavit z jiných dílů?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Lze tento díl použít k sestavení jiných dílů?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Lze u tohoto dílu sledovat jednotlivé položky?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Lze tento díl prodávat zákazníkům?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Je tento díl aktivní?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Je to virtuální díl, například softwarový produkt nebo licence?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Kontrolní součet kusovníku" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Uložený kontrolní součet kusovníku" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Kusovník zkontroloval" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Datum kontroly kusovníku" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Poslední inventura" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimální cena kusovníku" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maximální cena kusovníku" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimální nákupní cena" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maximální nákupní cena" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimální cena variant" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maximální cena variant" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimální cena" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maximální cena" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Minimální prodejní cena" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Maximální prodejní cena" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Počet položek" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Další poznámky" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Minimální cena zásob" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maximální cena zásob" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Počet dílů" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Název testu" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID dílu nebo název dílu" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID dílu" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Jedinečná hodnota ID dílu" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN dílu" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Hodnota IPN dílu" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "Položku kusovníku nelze změnit - sestava je uzamčena" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Vyberte nadřazený díl" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Reference položky kusovníku" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Poznámky k položce kusovníku" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Schváleno" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Tato položka kusovníku ještě nebyla schválena" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Podkategorie" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Výsledky" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Nákupní měna této skladové položky" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Původní díl" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Vyberte původní díl, který má být duplikován" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Kopírovat kusovník" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Název kategorie" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Skladové položky" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Dodavatelé" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Vyloučit skladové položky v externích umístěních" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Aktualizovat díly" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Kontrola procesů na pozadí se nezdařila" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Aktualizovat cenu pro díl" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "Vybrat nadřazenou sestavu" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Vymazat existující kusovník" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Odstranit existující položky kusovníku před nahráním" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Je vyžadována alespoň jedna položka kusovníku" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID dílu" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Pro data čárového kódu nebyla nalezena shoda" msgid "Match found for barcode data" msgstr "Pro data čárového kódu byla nalezena shoda" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Povolit e-mailová oznámení" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Otevřít odkaz" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Plugin" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "Odstranit konfiguraci pluginu z databáze" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Položky" @@ -7281,67 +7189,67 @@ msgstr "Výška [mm]" msgid "Label height, specified in mm" msgstr "Výška štítku uvedená v mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Nadřazená místo" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Externí umístění" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Strom dílů" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Množství je povinné" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Skladové umístění" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Skladová umístění" @@ -7718,7 +7626,7 @@ msgstr "Vyberte odpovídající díl dodavatele pro tuto skladovou položku" msgid "Where is this stock item located?" msgstr "Kde se tato skladová položka nachází?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Balení, ve kterém je tato skladová položka uložena" @@ -7734,7 +7642,7 @@ msgstr "Je tato položka nainstalována v jiné položce?" msgid "Serial number for this item" msgstr "Sériové číslo pro tuto položku" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Kód šarže pro tuto skladovou položku" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Skladová položka byla přidělena prodejní objednávce" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Skladová položka je nainstalována v jiné položce" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Skladová položka obsahuje jiné položky" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Skladová položka byla přidělena zákazníkovi" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Skladová položka je ve výrobě" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Duplicitní skladové položky" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Skladové položky musí odkazovat na stejný díl" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Skladové položky musí odkazovat na stejný díl dodavatele" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Zásobová položka nemůže být přesunuta, protože není skladem" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "Sledování skladových položek" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "Výsledek testu skladové položky" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Výsledek testu" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Číslo dílu dodavatele" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "Zadejte sériová čísla pro nové položky" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Cílové skladové umístění" @@ -8101,79 +8009,79 @@ msgstr "Vybrat skladové položky pro změnu stavu" msgid "No stock items selected" msgstr "Nejsou vybrány žádné skladové položky" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Podumístění" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "Nadřazené skladové umístění" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Položka je přidělena prodejní objednávce" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Položka je přidělena výrobnímu příkazu" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Zákazník, kterému mají být přiděleny skladové položky" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Musí být poskytnut seznam skladových položek" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Povolit sloučení skladových položek s různými díly dodavatele" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Povolit sloučení skladových položek s různými stavovými kódy" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Musí být poskytnuty alespoň dvě skladové položky" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Beze změny" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Hodnota primárního klíče skladové položky" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "Skladová položka není skladem" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Odesláno zákazníkovi" msgid "Returned from customer" msgstr "Vráceno od zákazníka" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Přístup odepřen" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Nemáte oprávnění k prohlížení této stránky." @@ -8317,47 +8225,39 @@ msgstr "Nemáte oprávnění k prohlížení této stránky." msgid "Authentication Failure" msgstr "Chyba ověření" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Byli jste odhlášeni z InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Přihlášení" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Stránka nebyla nalezena" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Požadovaná stránka neexistuje" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Interní chyba serveru" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Stránky jsou v údržbě" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Stránky jsou v současné době v údržbě a měly by být brzy opět v provozu!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Vyžadován restart serveru" @@ -8423,31 +8323,31 @@ msgstr "Klikněte na následující odkaz pro zobrazení tohoto dílu" msgid "Minimum Quantity" msgstr "Minimální množství" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Uživatelé" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Vyberte, kteří uživatelé jsou zařazeni do této skupiny" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Následující uživatelé jsou členy více skupin" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Osobní údaje" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Oprávnění" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Důležité termíny" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "Token vypršel" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API token" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API tokeny" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Název tokenu" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Uživatelský název tokenu" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Datum vypršení tokenu" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Čas posledního použití tokenu" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Inventura" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Zakoupené objednávky" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Prodejní objednávky" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Návratové objednávky" diff --git a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po index f4dad8282c..09e6368fb0 100644 --- a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Danish\n" "Language: da_DK\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint ikke fundet" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Bruger har ikke tilladelse til at se denne model" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-mail (igen)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Bekræftelse af e-mailadresse" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Du skal indtaste den samme e-mail hver gang." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Den indtastede email adresse er ikke gyldig." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Det angivne e-mail domæne er ikke godkendt." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registrering er deaktiveret." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunne ikke konvertere {original} til {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Ugyldigt antal angivet" @@ -100,14 +92,14 @@ msgstr "Angiv dato" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Bemærkninger" @@ -120,42 +112,42 @@ msgstr "Værdi '{name}' vises ikke i mønsterformat" msgid "Provided value does not match required pattern: " msgstr "Den angivne værdi matcher ikke det påkrævede mønster: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Serienummer streng er tom" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplikeret serienummer" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Ingen serienumre fundet" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Fjern HTML-tags fra denne værdi" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Kinesisk (forenklet)" msgid "Chinese (Traditional)" msgstr "Kinesisk (traditionelt)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-mail" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "JSON metadata felt, til brug af eksterne plugins" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Forkert formateret mønster" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Ukendt formatnøgle angivet" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Mangler nødvendig formatnøgle" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referencefelt må ikke være tomt" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Reference skal matche det påkrævede mønster" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referencenummer er for stort" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Ugyldigt valg" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Beskrivelse" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Beskrivelse (valgfri)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Sti" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown noter (valgfri)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Stregkode Data" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Tredjeparts stregkode data" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Stregkode Hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Unik hash af stregkode data" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Eksisterende stregkode fundet" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serverfejl" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "En fejl blev logget af serveren." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Skal være et gyldigt tal" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Vælg valuta fra tilgængelige muligheder" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Du har ikke tilladelse til at ændre denne brugerrolle." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Kun superbrugere kan oprette nye brugere" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Ugyldig værdi" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datafil" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Vælg datafilen til upload" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Filen er for stor" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Ingen kolonner fundet i fil" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Ingen datarækker fundet i fil" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Ingen data-rækker angivet" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Ingen data-kolonner angivet" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Mangler påkrævet kolonne: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplikeret kolonne: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Eksternt billede" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL til ekstern billedfil" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Download af billeder fra ekstern URL er ikke aktiveret" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Overordnet produktion" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Produktion skal anulleres, før den kan slettes" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Forbrugsvare" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Valgfri" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "Sporet" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Allokeret" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Tilgængelig" msgid "Build Order" msgstr "Produktionsordre" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Produktionsordrer" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Produktionsordre reference" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Salgsordrereference" msgid "SalesOrder to which this build is allocated" msgstr "Salgsordre, som er tildelt denne produktion" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Kilde Lokation" @@ -887,17 +836,17 @@ msgstr "Produktions Status" msgid "Build status code" msgstr "Produktions statuskode" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Batch Kode" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Batch kode til dette produktions output" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Oprettelsesdato" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Bruger som udstedte denne byggeordre" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarlig" @@ -947,7 +896,7 @@ msgstr "Bruger eller gruppe ansvarlig for denne byggeordre" msgid "External Link" msgstr "Ekstern link" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link til ekstern URL" @@ -982,7 +931,7 @@ msgstr "Bygningsordre {build} er fuldført" msgid "A build order has been completed" msgstr "En byggeordre er fuldført" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Ikke tilladt" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Accepter som forbrugt af denne byggeordre" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Accepter Ikke tildelt" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter at lagervarer ikke er fuldt tildelt til denne byggeordre" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Accepter ufuldført" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Bygge linje" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Annulleret" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Fuldført" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Bruger" @@ -1594,7 +1543,7 @@ msgstr "Bruger" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Vedhæftning" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datafil" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Kontrol af baggrundstjeneste mislykkedes" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Sendt til kunde" msgid "Returned from customer" msgstr "Returneret fra kunde" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po index 1af2ffe304..5edefeb90d 100644 --- a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API-Endpunkt nicht gefunden" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Benutzer hat keine Berechtigung, dieses Modell anzuzeigen" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-Mail (nochmal)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Bestätigung der E-Mail Adresse" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "E-Mail Adressen müssen übereinstimmen." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA Registrierung ist deaktiviert." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Die angegebene primäre E-Mail-Adresse ist ungültig." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Die angegebene E-Mail-Domain ist nicht freigegeben." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registrierung ist deaktiviert." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Konnte {original} nicht in {unit} umwandeln" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" @@ -100,14 +92,14 @@ msgstr "Datum eingeben" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notizen" @@ -120,42 +112,42 @@ msgstr "Wert '{name}' hält das Musterformat nicht ein" msgid "Provided value does not match required pattern: " msgstr "Angegebener Wert entspricht nicht dem benötigten Muster: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Keine Seriennummer angegeben" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplizierter Seriennummer" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppenbereich {group} überschreitet die zulässige Menge ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Keine Seriennummern gefunden" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Anzahl der eindeutigen Seriennummern ({len(serials)}) muss mit der Menge übereinstimmen ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Entferne HTML-Tags von diesem Wert" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Chinesisch (Vereinfacht)" msgid "Chinese (Traditional)" msgstr "Chinesisch (Traditionell)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Email" @@ -368,247 +360,205 @@ msgstr "Plugin Metadaten" msgid "JSON metadata field, for use by external plugins" msgstr "JSON-Metadatenfeld, für die Verwendung durch externe Plugins" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Falsch formatiertes Muster" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Unbekannter Formatschlüssel angegeben" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Erforderlicher Formatschlüssel fehlt" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referenz-Feld darf nicht leer sein" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referenz muss erforderlichem Muster entsprechen" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referenznummer ist zu groß" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Doppelte Namen können nicht unter dem selben Elternteil existieren" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Ungültige Auswahl" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Name" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Beschreibung" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Beschreibung (optional)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Pfad" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown Notizen (optional)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Barcode-Daten" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Drittanbieter-Barcode-Daten" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Barcode-Hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Eindeutiger Hash der Barcode-Daten" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Bestehender Barcode gefunden" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serverfehler" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Währung" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Währung aus verfügbaren Optionen auswählen" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Benutzername" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Vorname" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Vorname des Benutzers" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Nachname" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Nachname des Benutzers" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "E-Mailadresse des Benutzers" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Mitarbeiter" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Hat der Benutzer die Mitarbeiter Berechtigung" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Administrator" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Ist dieser Benutzer ein Administrator" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktiv" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Ist dieses Benutzerkonto aktiv" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Sie haben keine Berechtigung, diese Benutzerrolle zu ändern." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Nur Superuser können neue Benutzer erstellen" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Ihr Konto wurde erstellt." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Bitte benutzen Sie die Passwort-zurücksetzen-Funktion, um sich anzumelden" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Willkommen bei InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Ungültiger Wert" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datendatei" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Neue Datei zum Hochladen auswählen" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Datei ist zu groß" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Keine Spalten in der Datei gefunden" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Keine Datensätze in der Datei gefunden" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Keine Zeilen ausgewählt" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Keine Spalten angegeben" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Erforderliche Spalte '{name}' fehlt" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Doppelte Spalte: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Grafiken aus externen Quellen" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL der Remote-Bilddatei" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Das Herunterladen von Bildern von Remote-URLs ist nicht aktiviert" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Eltern-Bauauftrag" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Varianten einschließen" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Varianten einschließen" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Varianten einschließen" msgid "Part" msgstr "Teil" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategorie" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Bauauftrag muss abgebrochen werden, bevor er gelöscht werden kann" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Verbrauchsmaterial" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Optional" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Baugruppe" @@ -756,7 +705,7 @@ msgstr "Baugruppe" msgid "Tracked" msgstr "Nachverfolgt" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Prüfbar" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Zugeordnet" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Verfügbar" msgid "Build Order" msgstr "Bauauftrag" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Bauaufträge" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Bauauftragsreferenz" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Auftrag Referenz" msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Quell-Lagerort" @@ -887,17 +836,17 @@ msgstr "Bauauftrags-Status" msgid "Build status code" msgstr "Bau-Statuscode" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Losnummer" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Erstelldatum" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Nutzer der diesen Bauauftrag erstellt hat" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Verantwortlicher Benutzer" @@ -947,7 +896,7 @@ msgstr "Benutzer oder Gruppe verantwortlich für diesen Bauauftrag" msgid "External Link" msgstr "Externer Link" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link zu einer externen URL" @@ -982,7 +931,7 @@ msgstr "Bauauftrag {build} wurde fertiggestellt" msgid "A build order has been completed" msgstr "Ein Bauauftrag wurde fertiggestellt" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Seriennummern müssen für nachverfolgbare Teile angegeben werden" @@ -998,18 +947,18 @@ msgstr "Endprodukt bereits hergstellt" msgid "Build output does not match Build Order" msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Menge kann nicht größer als die Ausgangsmenge sein" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Build Ausgabe {serial} hat nicht alle erforderlichen Tests bestanden" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "Objekt bauen" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" msgid "Selected stock item does not match BOM line" msgstr "Ausgewählter Lagerbestand stimmt nicht mit BOM-Linie überein" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Lagerartikel" @@ -1094,366 +1043,366 @@ msgstr "Installiere in" msgid "Destination stock item" msgstr "Ziel-Lagerartikel" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Name des Teils" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Endprodukt" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Endprodukt stimmt nicht mit übergeordnetem Bauauftrag überein" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Endprodukt entspricht nicht dem Teil des Bauauftrags" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Dieses Endprodukt wurde bereits fertiggestellt" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Ganzzahl für verfolgbare Teile erforderlich" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Seriennummer" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Seriennummer für dieses Endprodukt eingeben" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Lagerort" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Lagerort für Bauprodukt" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Seriennummern automatisch zuweisen" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Benötigte Lagerartikel automatisch mit passenden Seriennummern zuweisen" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Die folgenden Seriennummern existieren bereits oder sind ungültig" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Eine Liste von Endprodukten muss angegeben werden" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Lagerort für ausgemusterte Ausgänge" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Zuteilungen verwerfen" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Bestandszuteilung für ausgemusterte Endprodukte verwerfen" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Grund für das Verwerfen des Bauauftrages/der Bauaufträge" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Lagerort für fertige Endprodukte" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Unvollständige Zuweisung akzeptieren" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Endprodukte fertigstellen, auch wenn Bestand nicht fertig zugewiesen wurde" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Zugewiesen Bestand verbrauchen" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Verbrauche alle Bestände, die diesem Bauauftrag bereits zugewiesen wurden" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Unfertige Endprodukte entfernen" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Lösche alle noch nicht abgeschlossenen Endprodukte" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Nicht erlaubt" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Als von diesem Bauauftrag verbraucht setzen" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Bestandszuordnung vor dem Abschluss dieses Bauauftrags freigeben" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Überbelegter Lagerbestand" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Wie sollen zusätzliche Lagerbestandteile, die dem Bauauftrag zugewiesen wurden, behandelt werden" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Der Bestand einiger Lagerartikel ist überbelegt" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Nicht zugewiesene akzeptieren" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Akzeptieren, dass Lagerartikel diesem Bauauftrag nicht vollständig zugewiesen wurden" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Unvollständig Zuweisung akzeptieren" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Akzeptieren, dass die erforderliche Anzahl der Bauaufträge nicht abgeschlossen ist" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Bauauftragsposition" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Endprodukt" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Bauauftragspositionsartikel" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Verfügbare Menge ({q}) überschritten" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Zuweisungen müssen angegeben werden" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerort, von dem Teile bezogen werden sollen (leer lassen, um sie von jedem Lagerort zu nehmen)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Lagerort ausschließen" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Lagerartikel vom ausgewählten Ort ausschließen" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Wechselbares Lagerbestand" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Ersatzbestand" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Zuordnung von Ersatzteilen erlauben" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Optionale Positionen" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Optionale Stücklisten-Positionen dem Bauauftrag hinzufügen" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Fehler beim Starten der automatischen Zuweisung" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Zuliefererteil" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Zugewiesene Menge" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Nachverfolgbar" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Vererbt" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Varianten zulassen" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Stücklisten-Position" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Zugewiesener Bestand" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Bestellt" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "In Produktion" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Externes Lager" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Verfügbarer Bestand" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Verfügbares Ersatzmaterial" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Storniert" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Fertig" @@ -1583,10 +1532,10 @@ msgstr "Schlüsseltext muss eindeutig sein" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Benutzer" @@ -1594,7 +1543,7 @@ msgstr "Benutzer" msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Preis" @@ -1619,7 +1568,7 @@ msgstr "Name für diesen Webhook" msgid "Is this webhook active" msgstr "Ist dieser Webhook aktiv" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?" msgid "Id" msgstr "ID" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Titel" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1715,11 +1664,10 @@ msgstr "Gelesen" msgid "Was this news item read?" msgstr "Wurde diese Nachricht gelesen?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Bild" @@ -1767,7 +1715,7 @@ msgstr "Definition" msgid "Unit definition" msgstr "Einheitsdefinition" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Anhang" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Wert" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Name des Bundeslandes" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Wert" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Ergebnis" @@ -2165,1065 +2113,1081 @@ msgstr "Benutzer hat keine Berechtigung, Anhänge für dieses Modell zu erstelle msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Keine Gruppe" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "Seiten-URL ist durch die Konfiguration gesperrt" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Neustart erforderlich" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Eine Einstellung wurde geändert, die einen Neustart des Servers erfordert" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Ausstehende Migrationen" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Anzahl der ausstehenden Datenbankmigrationen" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Name der Serverinstanz" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Kurze Beschreibung der Instanz" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Name der Instanz verwenden" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Den Namen der Instanz in der Titelleiste verwenden" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Anzeige von `Über` einschränken" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Zeige das `Über` Fenster nur Administratoren" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Firmenname" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "interner Firmenname" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Basis-URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Basis-URL für dieses Instanz" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Standardwährung" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Wählen Sie die Basiswährung für Preisberechnungen aus" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Verfügbare Währungen" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Liste der unterstützten Währungskürzel" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Währungsaktualisierungsintervall" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Wie oft Wechselkurse aktualisiert werden sollen (auf Null zum Deaktivieren setzen)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "Tage" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Währungs-Aktualisierungs-Plugin" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Zu verwendendes Währungs-Aktualisierungs-Plugin" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Von URL herunterladen" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Herunterladen von externen Bildern und Dateien von URLs erlaubt" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Download-Größenlimit" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maximal zulässige Größe für heruntergeladene Bilder" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Benutzer-Agent zum Herunterladen von Daten" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Überschreiben des Benutzer-Agenten, der verwendet wird, um Bilder und Dateien von externer Servern herunterzuladen (leer für die Standardeinstellung)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Strenge URL-Prüfung" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Erfordert die Schema-Spezifikation bei der Validierung von URLs" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Prüfungsintervall aktualisieren" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Wie oft soll nach Updates gesucht werden? (auf 0 setzen zum Deaktivieren)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatische Sicherung" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Automatische Sicherung der Datenbank- und Mediendateien aktivieren" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervall für automatische Sicherung" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Anzahl der Tage zwischen automatischen Sicherungen" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Aufgabenlöschinterval" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Ergebnisse der Hintergrundaufgabe werden nach der angegebenen Anzahl von Tagen gelöscht" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Löschintervall für Fehlerprotokolle" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Fehlerprotokolle werden nach der angegebenen Anzahl von Tagen gelöscht" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Löschintervall für Benachrichtigungen" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Benutzerbenachrichtigungen werden nach der angegebenen Anzahl von Tagen gelöscht" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Bacode-Feature verwenden" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Barcode-Scanner Unterstützung im Webinterface aktivieren" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Barcode-Eingabeverzögerung" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Verzögerungszeit bei Barcode-Eingabe" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Barcode Webcam-Unterstützung" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Barcode-Scannen über Webcam im Browser erlauben" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Artikelrevisionen" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Revisions-Feld für Artikel aktivieren" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Löschen aus Baugruppe erlauben" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Erlaube das Löschen von Teilen, die in einer Baugruppe verwendet werden" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN Regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "RegEx Muster für die Zuordnung von Teil-IPN" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Mehrere Artikel mit gleicher IPN erlaubt" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Mehrere Artikel mit gleicher IPN erlaubt" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Ändern von IPN erlaubt" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Ändern der IPN während des Bearbeiten eines Teils erlaubt" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Teil-Stückliste kopieren" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Stückliste von Teil kopieren wenn das Teil dupliziert wird " -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Teil-Parameter kopieren" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Parameter-Daten für dieses Teil kopieren wenn das Teil dupliziert wird" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Teil-Testdaten kopieren" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Test-Daten für dieses Teil kopieren wenn das Teil dupliziert wird" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kategorie-Parametervorlage kopieren" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Vorlage" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Teile sind standardmäßig Vorlagen" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponente" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Teile können standardmäßig in Baugruppen benutzt werden" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Kaufbar" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Verkäuflich" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Artikel sind grundsätzlich verkaufbar" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Artikel sind grundsätzlich verfolgbar" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuell" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Teile sind grundsätzlich virtuell" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Import in Ansichten anzeigen" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Importassistent in einigen Teil-Ansichten anzeigen" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Verwandte Teile anzeigen" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Verwandte Teile eines Teils anzeigen" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Initialer Lagerbestand" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Erstellen von Lagerbestand beim Hinzufügen eines neuen Teils erlauben" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Initiale Lieferantendaten" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Erstellen von Lieferantendaten beim Hinzufügen eines neuen Teils erlauben" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Anzeigeformat für Teilenamen" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Format für den Namen eines Teiles" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Standardsymbol der Teilkategorie" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Standardsymbol der Teilkategorie (leer bedeutet kein Symbol)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Parameter Einheiten durchsetzen" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Wenn Einheiten angegeben werden, müssen die Parameterwerte mit den angegebenen Einheiten übereinstimmen" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Dezimalstellen für minimalen Preis" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Mindestanzahl der Dezimalstellen bei der Darstellung der Preisdaten" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Dezimalstellen für maximalen Preis" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximale Anzahl der Dezimalstellen bei der Darstellung der Preisdaten" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Zulieferer-Preise verwenden" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Lieferanten-Staffelpreise in die Gesamt-Preisberechnungen einbeziehen" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Kaufverlauf überschreiben" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historische Bestellungspreise überschreiben die Lieferanten-Staffelpreise" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Lagerartikel-Preis verwenden" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Preise aus manuell eingegebenen Lagerdaten für Preisberechnungen verwenden" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Lagerartikelpreis Alter" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Lagerartikel, die älter als diese Anzahl an Tagen sind, von der Preisberechnung ausschließen" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Variantenpreise verwenden" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Variantenpreise in die Gesamt-Preisberechnungen einbeziehen" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Nur aktive Varianten" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Nur aktive Variantenteile zur Berechnung der Variantenbepreisung verwenden" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervall für Neuberechnung von Preisen" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Anzahl der Tage bis die Teile-Preisberechnungen automatisch aktualisiert werden" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interne Preise" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Interne Preise für Teile aktivieren" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Interne Preisüberschreibung" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Falls verfügbar, überschreiben interne Preise Preispannenberechnungen" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Labeldruck aktivieren" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Labeldruck über die Website aktivieren" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Label Bild DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI-Auflösung bei der Erstellung von Bilddateien für Etikettendruck-Plugins" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Berichte aktivieren" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Berichterstellung aktivieren" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Entwickler-Modus" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Berichte im Entwickler-Modus generieren (als HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Berichtsfehler protokollieren" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Fehler, die beim Erstellen von Berichten auftreten, protokollieren" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Seitengröße" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Standardseitenformat für PDF-Bericht" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Global einzigartige Seriennummern" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Seriennummern für Lagerartikel müssen global eindeutig sein" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Seriennummern automatisch ausfüllen" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Seriennummern in Formularen automatisch ausfüllen" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Erschöpften Lagerartikel löschen" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Legt das Standardverhalten fest, wenn ein Lagerartikel aufgebraucht ist" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Losnummer Vorlage" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Vorlage für die Generierung von Standard-Losnummern für Lagerbestände" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Bestands-Ablauf" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Ablaufen von Bestand ermöglichen" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Abgelaufenen Bestand verkaufen" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Verkauf von abgelaufenem Bestand erlaubt" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Bestands-Stehzeit" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Anzahl an Tagen, an denen Bestand als abgestanden markiert wird, bevor sie ablaufen" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Abgelaufenen Bestand verbauen" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Verbauen von abgelaufenen Bestand erlaubt" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Bestands-Eigentümerkontrolle" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Standardsymbol für Lagerort" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Standardsymbol für Lagerstandort (leer bedeutet kein Symbol)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Zeige installierte Lagerartikel" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Anzeige der installierten Lagerartikel in Bestandstabellen" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Prüfe BOM bei der Installation von Elementen" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Installierte Lagerbestandteile müssen im BOM für den übergeordneten Teil vorhanden sein" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Erlaube Verschieben von \"nicht auf Lager\" Bestand" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Lagerartikel, die nicht auf Lager sind, können zwischen Lagerstandorten übertragen werden" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Bauauftragsreferenz-Muster" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bauaufträge" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Verantwortlicher Besitzer erforderlich" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Jeder Bestellung muss ein verantwortlicher Besitzer zugewiesen werden" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Blockieren bis Test bestanden" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Verhindert die Fertigstellung bis alle erforderlichen Tests bestanden sind" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Rücksendungen aktivieren" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Aktivieren der Rücksendung-Funktion in der Benutzeroberfläche" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Referenz Muster für Rücksendungen" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Rücksendungen" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Abgeschlossene Rücksendungen bearbeiten" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Bearbeitung von Rücksendungen nach Abschluss erlauben" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Auftragsreferenz-Muster" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Aufträge" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Auftrag Standardsendung" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Erstelle eine Standardsendung für Aufträge" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Abgeschlossene Aufträge bearbeiten" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Bearbeitung von Aufträgen nach Versand oder Abschluss erlauben" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Versendete Bestellungen als abgeschlossen markieren" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Als versendet markierte Aufträge werden automatisch abgeschlossen und überspringen den Status \"Versandt\"" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Bestellungsreferenz-Muster" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bestellungen" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Abgeschlossene Einkaufsaufträge bearbeiten" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Bearbeitung von Einkaufsaufträgen nach Versand oder Abschluss erlauben" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Bestellungen automatisch abschließen" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Bestellung automatisch als abgeschlossen markieren, wenn der Empfang aller Artikel bestätigt wurde" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Passwort vergessen aktivieren" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Registrierung erlauben" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "SSO aktivieren" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "SSO auf den Anmeldeseiten aktivieren" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "SSO Selbstregistrierung aktivieren" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Selbstregistrierung über SSO für Benutzer auf den Anmeldeseiten aktivieren" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "SSO Gruppensynchronisation aktivieren" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "SSO Gruppenschlüssel" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email-Adresse erforderlich" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "SSO-Benutzer automatisch ausfüllen" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "E-Mail zweimal" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Passwort zweimal" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Erlaubte Domains" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Anmeldung auf bestimmte Domänen beschränken (kommagetrennt, beginnend mit @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Gruppe bei Registrierung" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "MFA erzwingen" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Plugins beim Start prüfen" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Beim Start überprüfen, ob alle Plugins installiert sind - Für Container aktivieren" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Nach Plugin-Aktualisierungen suchen" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Periodische Überprüfungen auf Updates für installierte Plugins aktivieren" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "URL-Integration aktivieren" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Plugins zum Hinzufügen von URLs aktivieren" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Navigations-Integration aktivieren" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Plugins zur Integration in die Navigation aktivieren" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "App-Integration aktivieren" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Plugins zum Hinzufügen von Apps aktivieren" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Terminplan-Integration aktivieren" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Geplante Aufgaben aktivieren" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Ereignis-Integration aktivieren" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Plugins ermöglichen auf interne Ereignisse zu reagieren" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Inventurfunktionen" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Inventur-Funktionen zur Aufzeichnung von Lagerbeständen und zur Berechnung des Lagerwerts aktivieren" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Externe Standorte ausschließen" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Lagerartikeln in externen Standorten in der Berechnungen zur Bestandsaufnahme ausschließen" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Automatische Inventur-Periode" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Anzahl der Tage zwischen automatischen Bestandsaufnahmen (zum Deaktivieren auf Null setzen)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Löschintervall für Berichte" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Inventurberichte werden nach der angegebenen Anzahl von Tagen gelöscht" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Vollständige Namen von Benutzern anzeigen" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Vollständigen Namen von Benutzern anstatt Benutzername anzeigen" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Teststation-Daten aktivieren" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Teststation-Datenerfassung für Testergebnisse aktivieren" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "Internes Teil ist aktiv" msgid "Supplier is Active" msgstr "Lieferant ist aktiv" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Hersteller" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Firma" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Link zu Adressinformationen (extern)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Herstellerteil" @@ -3744,8 +3708,8 @@ msgstr "Teil auswählen" msgid "Select manufacturer" msgstr "Hersteller auswählen" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "MPN" @@ -3773,7 +3737,7 @@ msgstr "Parametername" msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Einheiten" @@ -3793,11 +3757,11 @@ msgstr "Packeinheiten müssen größer als Null sein" msgid "Linked manufacturer part must reference the same base part" msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Zulieferer" @@ -3805,7 +3769,7 @@ msgstr "Zulieferer" msgid "Select supplier" msgstr "Zulieferer auswählen" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Lagerbestandseinheit (SKU) des Zulieferers" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Zuliefererbeschreibung des Teils" msgid "Note" msgstr "Notiz" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Verpackungen" @@ -3861,7 +3825,7 @@ msgstr "Packmenge" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Gesamtmenge, die in einer einzelnen Packung geliefert wird. Für Einzelstücke leer lassen." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "Vielfache" @@ -3885,15 +3849,15 @@ msgstr "Datum des letzten Updates der Verfügbarkeitsdaten" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Standard-Währung für diesen Zulieferer" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Firmenname" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Auf Lager" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Schlüssel" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "Ungültiges Exportformat" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datendatei" + #: importer/models.py:65 msgid "Data file to import" msgstr "Zu importierende Datei" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "Fehler" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Gültig" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Anzahl muss eine positive Zahl sein" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kunde" @@ -4835,11 +4803,11 @@ msgstr "Elemente zusammenfügen" msgid "Merge items with the same part, destination and target date into one line item" msgstr "Zusammenführen von Elementen mit dem gleichen Teil, Ziel- und Zieldatum zu einem Zeilenelement" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "Lieferanten-Teilenummer" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Interne Teilenummer" @@ -4879,7 +4847,7 @@ msgstr "Zielort für empfangene Teile auswählen" msgid "Enter batch code for incoming stock items" msgstr "Losnummer für eingehende Lagerartikel" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Ablaufdatum" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "Artikel der Bestellzeile zurücksenden" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Lagerartikel Status-Code" @@ -5061,7 +5029,7 @@ msgstr "Markiert" msgid "Filter by starred categories" msgstr "Nach markierten Kategorien filtern" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Ebenen" @@ -5069,7 +5037,7 @@ msgstr "Ebenen" msgid "Filter by category depth" msgstr "Filter nach Kategorietiefe" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Oberste Ebene" @@ -5077,7 +5045,7 @@ msgstr "Oberste Ebene" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "Mehrstufig" @@ -5105,1250 +5073,1190 @@ msgstr "Unterkategorien in der angegebenen Kategorie ausschließen" msgid "Has Results" msgstr "Ergebnisse" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Eingehende Bestellung" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Ausgehender Auftrag" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Lagerartikel produziert von Bauauftrag" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Lagerartikel für Bauauftrag benötigt" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Gesamte Stückliste validieren" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Diese Option muss ausgewählt werden" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "Verwendet" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Teil-Kategorie" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Teil-Kategorien" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Standard-Lagerort" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Standard-Lagerort für Teile dieser Kategorie" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Strukturell" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Teile können nicht direkt einer strukturellen Kategorie zugeordnet werden, können aber untergeordneten Kategorien zugeordnet werden." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Standard Stichwörter" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Symbol" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Symbol (optional)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Sie können diese Teilekategorie nicht als strukturell festlegen, da ihr bereits Teile zugewiesen sind!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Teile" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "Dieses Teil kann nicht gelöscht werden, da es noch aktiv ist" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "Dieses Teil kann nicht gelöscht werden, da es in einem Bauauftrag verwendet wird" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Ungültige Auswahl für übergeordnetes Teil" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Teil '{self}' kann in der Stückliste nicht für '{parent}' (rekursiv) verwendet werden" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Teil '{parent}' wird in der Stückliste für '{self}' (rekursiv) verwendet" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN muss mit Regex-Muster {pattern} übereinstimmen" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Teil mit diesem Namen, IPN und Revision existiert bereits." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Strukturellen Teilekategorien können keine Teile zugewiesen werden!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Ist eine Vorlage" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante von" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Artikelbeschreibung (optional)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Schlüsselwörter" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN (Interne Produktnummer)" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Version" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Standard Zuliefererteil" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Standard Ablaufzeit" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimaler Bestand" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Bestand" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Maßeinheit für diesen Teil" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 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:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Stückliste kontrolliert von" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "BOM Kontrolldatum" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Verantwortlicher Besitzer für dieses Teil" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Letzte Inventur" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Währung für die Berechnung der Preise im Cache" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimale Stücklisten Kosten" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Minimale Kosten für Teile" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maximale Stücklisten Kosten" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Maximale Kosten für Teile" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimale Einkaufskosten" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Minimale historische Kaufkosten" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maximale Einkaufskosten" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Maximale historische Einkaufskosten" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Minimaler interner Preis" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Minimale Kosten basierend auf den internen Staffelpreisen" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Maximaler interner Preis" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Maximale Kosten basierend auf internen Preisstaffeln" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Minimaler Lieferantenpreis" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Mindestpreis für Teil von externen Lieferanten" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Maximaler Lieferantenpreis" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Maximaler Preis für Teil von externen Lieferanten" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimale Variantenkosten" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Berechnete minimale Kosten für Variantenteile" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maximale Variantenkosten" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Berechnete maximale Kosten für Variantenteile" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimale Kosten" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Mindestkosten überschreiben" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maximale Kosten" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Maximale Kosten überschreiben" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Berechnete Mindestkosten" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Berechnete Maximalkosten" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Mindestverkaufspreis" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Mindestverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Maximaler Verkaufspreis" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Maximalverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Mindestverkaufskosten" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Minimaler historischer Verkaufspreis" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Maximale Verkaufskosten" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Maximaler historischer Verkaufspreis" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Teil für die Inventur" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Stückzahl" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Anzahl einzelner Bestandseinträge zum Zeitpunkt der Inventur" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Insgesamt verfügbarer Lagerbestand zum Zeitpunkt der Inventur" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Datum der Inventur" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Zusätzliche Notizen" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Benutzer, der diese Inventur durchgeführt hat" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Mindestbestandswert" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Geschätzter Mindestwert des vorhandenen Bestands" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maximaler Bestandswert" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Geschätzter Maximalwert des vorhandenen Bestands" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Bericht" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Inventur-Berichtsdatei (intern generiert)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Anzahl der Teile" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Anzahl der Teile, die von der Inventur abgedeckt werden" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Benutzer, der diesen Inventurbericht angefordert hat" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Ungültiger Vorlagenname - es muss mindestens ein alphanumerisches Zeichen enthalten sein" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "Auswahl muss einzigartig sein" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "Testvorlage mit demselben Schlüssel existiert bereits für Teil" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "Testschlüssel" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "Vereinfachter Schlüssel zum Test" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Aktiviert" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "Ist dieser Test aktiviert?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Benötigt" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Muss für diesen Test ein Wert für das Test-Ergebnis eingetragen werden?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Muss für diesen Test ein Anhang für das Test-Ergebnis hinzugefügt werden?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Auswahlmöglichkeiten" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "Gültige Optionen für diesen Test (durch Komma getrennt)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Checkbox-Parameter können keine Einheiten haben" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox-Parameter können keine Auswahl haben" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Physikalische Einheiten für diesen Parameter" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Parameter-Beschreibung" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Checkbox" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Ist dieser Parameter eine Checkbox?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gültige Optionen für diesen Parameter (durch Kommas getrennt)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Ungültige Auswahl für Parameterwert" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Teilnummer oder Teilname" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Teil-ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Eindeutige Teil-ID" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "Teil IPN" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "IPN-Wert des Teils" - -#: part/models.py:4130 -msgid "Level" -msgstr "Stufe" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Stücklistenebene" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Diese Stücklisten-Position ist ein Verbrauchsartikel (sie wird nicht in Bauaufträgen verfolgt)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Überschuss" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "überprüft" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Diese Stücklistenposition wurde validiert" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Wird vererbt" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Diese Stücklisten-Position wird in die Stücklisten von Teil-Varianten vererbt" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Teil-Beziehung kann nicht zwischen einem Teil und sich selbst erstellt werden" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "Übergeordnete Kategorie" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Übergeordnete Teilkategorie" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Unter-Kategorien" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Ergebnisse" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "Anzahl der Ergebnisse, die in dieser Vorlage aufgezeichnet wurden" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Kaufwährung dieses Lagerartikels" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "Anzahl der Teile, die diese Vorlage verwenden" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Keine Teile ausgewählt" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Kategorie auswählen" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Originalteil" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Originalteil zum Duplizieren auswählen" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Bild kopieren" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Bild vom Originalteil kopieren" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Stückliste kopieren" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Stückliste vom Originalteil kopieren" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Parameter kopieren" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Parameterdaten vom Originalteil kopieren" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Anmerkungen kopieren" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Notizen aus Originalteil kopieren" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Start-Bestandsmenge" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Initiale Lagermenge für dieses Teil. Wenn die Menge null ist, wird kein Lagerbestand hinzugefügt." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Initialer Lagerort" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Lagerstandort für dieses Teil angeben" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Lieferant auswählen (oder leer lassen, um zu überspringen)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Hersteller auswählen (oder leer lassen, um zu überspringen)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Hersteller-Teilenummer" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "Ausgewählte Firma ist kein gültiger Lieferant" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "Ausgewählte Firma ist kein gültiger Hersteller" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "Herstellerteil mit dieser MPN existiert bereits" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "Lieferantenteil mit dieser SKU existiert bereits" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Kategoriename" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Im Bau" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Lagerartikel" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Zulieferer" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Gesamtbestand" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "Nicht zugewiesenes Lager" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "Alternatives Lager" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Teil duplizieren" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Initiale Daten von anderem Teil kopieren" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Initialer Lagerbestand" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Erstelle Teil mit Ausgangsbestand" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Lieferanteninformationen" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Lieferanteninformationen zu diesem Teil hinzufügen" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Kategorieparameter kopieren" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Parametervorlagen aus der ausgewählten Teilkategorie kopieren" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Vorhandenes Bild" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "Dateiname eines vorhandenen Teilbildes" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "Bilddatei existiert nicht" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Inventurbericht auf ein bestimmtes Teil und alle Variantenteile beschränken" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Inventurbericht auf eine bestimmte Teilekategorie und alle untergeordneten Kategorien beschränken" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Inventurbericht auf einen bestimmten Lagerort und alle untergeordneten Lagerorte beschränken" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Externen Bestand ausschließen" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Lagerartikel an externen Orten ausschließen" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Bericht generieren" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Erstelle Berichtsdatei mit berechneten Inventurdaten" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Teile aktualisieren" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Angegebene Teile mit berechneten Inventurdaten aktualisieren" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Inventur-Funktionalität ist nicht aktiviert" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Hintergrund-Prozess-Kontrolle fehlgeschlagen" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Niedrigster Preis" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Berechneten Wert für Mindestpreis überschreiben" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Mindestpreis Währung" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Höchster Preis" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Berechneten Wert für maximalen Preis überschreiben" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Maximalpreis Währung" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Aktualisieren" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Preis für dieses Teil aktualisieren" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Konnte nicht von den angegebenen Währungen in {default_currency} umrechnen" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "Mindestpreis darf nicht größer als der Maximalpreis sein" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "Der Maximalpreis darf nicht kleiner als der Mindestpreis sein" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Herstellbar" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Teil auswählen, von dem Stückliste kopiert wird" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Bestehende Daten entfernen" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Vererbtes einschließen" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Ungültige Zeilen überspringen" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Ersatzteile kopieren" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Bestehende Stückliste löschen" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Bestehende Stücklisten-Positionen vor dem Importieren entfernen" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Keine Teilspalte angegeben" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Mehrere übereinstimmende Teile gefunden" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Keine passenden Teile gefunden" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Teil ist nicht als Komponente angelegt" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Menge nicht angegeben" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Ungültige Menge" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Mindestens eine Stückliste-Position ist erforderlich" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Teil-ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Keine Treffer für Barcode" msgid "Match found for barcode data" msgstr "Treffer für Barcode gefunden" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "Erhaltene Bestellartikel" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Gescannte Barcode Daten" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "Ordne Artikel Bestellung zu" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Bestellung ist nicht ausstehend" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Ordne erhaltene Artikel Bestellung zu" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Bestellung wurde nicht aufgegeben" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Ort für den Empfang von Artikeln" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Kann keinen strukturellen Standort auswählen" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "Kundenauftrag zum Zuordnen von Artikeln zu" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "Bestellung ist nicht ausstehend" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "Artikel der Verkaufsbestellung zuweisen" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "Sendung des Verkaufsauftrags zur Zuweisung von Artikeln gegen" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "Sendung wurde bereits geliefert" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Zugewiesene Menge" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Bietet native Unterstützung für Barcodes" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree Benachrichtigungen" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Integrierte ausgehende Benachrichtigungsmethoden" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "E-Mail-Benachrichtigungen aktivieren" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Das Senden von Benachrichtigungen als E-Mails erlauben" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Slack Benachrichtigungen aktivieren" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Erlaube das Senden von Slack Channel Nachrichten für Benachrichtigungen" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Eingehender Webhook-URL für Slack" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL, die verwendet wird, um Nachrichten an einen Slack-Kanal zu senden" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Link öffnen" @@ -6936,7 +6844,7 @@ msgstr "Integriertes Plugin" msgid "Package Plugin" msgstr "Paket-Plugin" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Plugin" @@ -7155,7 +7063,7 @@ msgstr "Konfiguration löschen" msgid "Delete the plugin configuration from the database" msgstr "Plugin-Konfiguration aus der Datenbank löschen" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Teile" @@ -7281,67 +7189,67 @@ msgstr "Höhe [mm]" msgid "Label height, specified in mm" msgstr "Label-Höhe in mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Fortschritt" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "Ausgabedatei" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Schnipsel" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Berichts-Snippet" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Snippet-Beschreibung" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Ressource" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Berichts-Ressource" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Ressource-Beschreibung" @@ -7493,123 +7401,123 @@ msgstr "part_image tag benötigt eine Bauteilinstanz" msgid "company_image tag requires a Company instance" msgstr "company_image tag erfordert eine Firmeninstanz" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "Filtern nach Standorttiefe" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "Unterorte in gefilterte Ergebnisse einbeziehen" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Übergeordneter Ort" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filtern nach übergeordnetem Ort" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Statuscode" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Externer Standort" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Teile-Baum" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Gültigkeitsdauer vor" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Gültigkeitsdauer nach" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "überfällig" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Menge ist erforderlich" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Gültiges Teil muss angegeben werden" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "Der angegebene Lieferantenartikel existiert nicht" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "Das Zulieferteil hat eine Packungsgröße definiert, aber das Kennzeichen use_pack_size ist nicht gesetzt" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Seriennummern können für nicht verfolgbare Teile nicht angegeben werden" @@ -7629,7 +7537,7 @@ msgstr "Standardsymbol für alle Orte, die kein Icon gesetzt haben (optional)" msgid "Stock Location" msgstr "Bestand-Lagerort" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Bestand-Lagerorte" @@ -7718,7 +7626,7 @@ msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen" msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Verpackung, in der dieser Lagerartikel gelagert ist" @@ -7734,7 +7642,7 @@ msgstr "Ist dieses Teil in einem anderen verbaut?" msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Losnummer für diesen Lagerartikel" @@ -7790,136 +7698,136 @@ msgstr "Preis für eine Einheit bei Einkauf" msgid "Converted to part" msgstr "In Teil umgewandelt" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Teil ist nicht verfolgbar" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Menge darf die verfügbare Lagermenge ({self.quantity}) nicht überschreiten" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "Testvorlage existiert nicht" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Artikel wurde einem Kundenauftrag zugewiesen" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Lagerartikel ist in anderem Element verbaut" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Lagerartikel enthält andere Artikel" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Artikel wurde einem Kunden zugewiesen" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Lagerartikel wird aktuell produziert" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Artikel duplizeren" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Lagerartikel müssen auf dasselbe Teil verweisen" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Lagerartikel müssen auf dasselbe Lieferantenteil verweisen" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Status-Codes müssen zusammenpassen" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerartikel kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Wert muss für diesen Test angegeben werden" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Anhang muss für diesen Test hochgeladen werden" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Testergebnis" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Test Ausgabe Wert" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Test Ergebnis Anhang" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Test Notizen" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "Teststation" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "Der Bezeichner der Teststation, in der der Test durchgeführt wurde" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "Gestartet" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "Der Zeitstempel des Teststarts" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Fertiggestellt" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "Der Zeitstempel der Test-Beendigung" @@ -7995,7 +7903,7 @@ msgstr "Packungsgröße beim Hinzufügen verwenden: Die definierte Menge ist die msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "abgelaufen" @@ -8024,7 +7932,7 @@ msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})" msgid "Enter serial numbers for new items" msgstr "Seriennummern für neue Teile eingeben" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Ziel-Bestand" @@ -8101,79 +8009,79 @@ msgstr "Lagerartikel auswählen, um den Status zu ändern" msgid "No stock items selected" msgstr "Keine Lagerartikel ausgewählt" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Unter-Lagerorte" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Teil muss verkaufbar sein" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Artikel ist einem Kundenauftrag zugeordnet" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Artikel ist einem Fertigungsauftrag zugeordnet" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Kunde zum Zuweisen von Lagerartikel" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "Ausgewählte Firma ist kein Kunde" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Notizen zur Lagerzuordnung" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Eine Liste der Lagerbestände muss angegeben werden" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Notizen zur Lagerartikelzusammenführung" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Unterschiedliche Lieferanten erlauben" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Lieferanten erlauben" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Unterschiedliche Status erlauben" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Status-Codes erlauben" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Mindestens zwei Lagerartikel müssen angegeben werden" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Keine Änderung" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Primärschlüssel Lagerelement" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Bestandsbewegungsnotizen" @@ -8305,11 +8213,11 @@ msgstr "Zum Kunden geschickt" msgid "Returned from customer" msgstr "Rücksendung vom Kunden" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Zugriff verweigert" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Keine Berechtigung zum Anzeigen dieser Seite." @@ -8317,47 +8225,39 @@ msgstr "Keine Berechtigung zum Anzeigen dieser Seite." msgid "Authentication Failure" msgstr "Authentifizierungsfehler" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Sie wurden von InvenTree abgemeldet." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Einloggen" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Seite nicht gefunden" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Seite existiert nicht" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Interner Serverfehler" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "Der %(inventree_title)s -Server hat einen internen Fehler aufgeworfen" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Weitere Details finden Sie im Fehlerlog im Admin-Interface" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "System wird gewartet" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Die Seite ist derzeit in Wartung und sollte bald wieder verfügbar sein!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree Logo" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Server-Neustart erforderlich" @@ -8423,31 +8323,31 @@ msgstr "Klicken Sie auf den folgenden Link, um diesen Teil anzuzeigen" msgid "Minimum Quantity" msgstr "Mindestmenge" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Benutzer" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Welche Benutzer gehören zu dieser Gruppe" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Folgende Benutzer gehören zu mehreren Gruppen" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Persöhnliche Informationen" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Berechtigungen" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "wichtige Daten" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Token wurde widerrufen" @@ -8455,55 +8355,55 @@ msgstr "Token wurde widerrufen" msgid "Token has expired" msgstr "Token ist abgelaufen" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API Token" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API-Tokens" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Tokenname" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Benutzerdefinierter Tokenname" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Token Ablaufdatum" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Zuletzt gesehen" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Das letzte Mal, wo das Token verwendet wurde" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Widerrufen" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Admin" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Inventur" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Bestellungen" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Aufträge" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Rücksendeaufträge" diff --git a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po index f330453157..14ab82eb7b 100644 --- a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Το API endpoint δε βρέθηκε" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Δεν έχετε δικαιώματα να το δείτε αυτό" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-mail (ξανά)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Επιβεβαίωση διεύθυνσης email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Πρέπει να πληκτρολογήσετε το ίδιο email κάθε φορά." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Η παρεχόμενη κύρια διεύθυνση ηλεκτρονικού ταχυδρομείου δεν είναι έγκυρη." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Ο παρεχόμενος τομέας ηλεκτρονικού ταχυδρομείου δεν έχει εγκριθεί." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Η εγγραφή είναι απενεργοποιημένη." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Δεν ήταν δυνατή η μετατροπή από {original} σε {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Μη έγκυρη ποσότητα" @@ -100,14 +92,14 @@ msgstr "Εισάγετε ημερομηνία" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Σημειώσεις" @@ -120,42 +112,42 @@ msgstr "Η τιμή '{name}' δεν εμφανίζεται σε μορφή μο msgid "Provided value does not match required pattern: " msgstr "Η παρεχόμενη τιμή δεν ταιριάζει με το απαιτούμενο απαραραίητη μοτίβο: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Κενό σειριακό αριθμό συμβολοσειράς" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Διπλότυπο serial number" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Το εύρος της ομάδας {group} υπερβαίνει την επιτρεπόμενη ποσότητα ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Δεν βρέθηκαν σειριακοί αριθμοί" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Ο αριθμός μοναδικών σειριακών αριθμών ({len(serials)}) πρέπει να αντιστοιχεί στην ποσότητα ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Αφαιρέστε τα HTML tags από την τιμή που εισάγατε" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Κινέζικα (απλοποιημένα)" msgid "Chinese (Traditional)" msgstr "Κινέζικα (Παραδοσιακά)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "Μεταδεδομένα Πρόσθετου" msgid "JSON metadata field, for use by external plugins" msgstr "JSON πεδίο μεταδεδομένων, για χρήση από εξωτερικά πρόσθετα" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Λανθασμένο μοτίβο" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Δώσατε λάθος μορφή κλειδιού" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Λείπει το απαραίτητο κλειδί" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Το πεδίο δεν μπορεί να είναι άδειο" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Η αναφορά πρέπει να ταιριάζει με το απαιτούμενο μοτίβο" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Ο αριθμός αναφοράς είναι πολύ μεγάλος" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Διπλότυπα ονόματα δεν μπορούν να υπάρχουν στον ίδιο γονέα" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Μη έγκυρη επιλογή" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Όνομα" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Περιγραφή" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Περιγραφή (προαιρετική)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Μονοπάτι" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Σημειώσεις Markdown (προαιρετικό)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Στοιχεία Barcode" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Δεδομένα barcode τρίτων" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Μοναδικό hash δεδομένων barcode" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Βρέθηκε υπάρχων barcode" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Σφάλμα διακομιστή" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Πρέπει να είναι αριθμός" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Νόμισμα" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Επιλέξτε νόμισμα από τις διαθέσιμες επιλογές" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Δεν έχετε άδεια να αλλάξετε αυτόν τον ρόλο χρήστη." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Μόνο υπερχρήστες (superusers) μπορούν να δημιουργήσουν νέους χρήστες" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Ο λογαριασμός σας δημιουργήθηκε." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Παρακαλούμε χρησιμοποιήστε τη λειτουργία επαναφοράς κωδικού πρόσβασης για να συνδεθείτε" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Καλώς ήρθατε στο InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Μη έγκυρη τιμή" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Αρχείο Δεδομένων" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Επιλέξτε ένα αρχείο για ανέβασμα" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Το αρχείο είναι πολύ μεγάλο" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Δεν βρέθηκαν στήλες στο αρχείο" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Δεν βρέθηκαν γραμμές δεδομένων στο αρχείο" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Δεν παρασχέθηκαν σειρές δεδομένων" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Δεν δόθηκαν στήλες δεδομένων" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Λείπει απαιτούμενη στήλη: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Διπλή στήλη: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Απομακρυσμένες Εικόνες" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "Διεύθυνση URL του αρχείου απομακρυσμένης εικόνας" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Η λήψη εικόνων από απομακρυσμένο URL δεν είναι ενεργοποιημένη" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Γονική Κατασκευή" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Εξάρτημα" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Η έκδοση πρέπει να ακυρωθεί πριν διαγραφεί" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Αναλώσιμο" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Προαιρετικό" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "Υπό παρακολούθηση" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Κατανεμημένο" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Διαθέσιμο" msgid "Build Order" msgstr "Σειρά Κατασκευής" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Δημιουργία Παραγγελιών" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Αναφορά Παραγγελίας Κατασκευής" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Κωδικός Παραγγελίας Πωλήσεων" msgid "SalesOrder to which this build is allocated" msgstr "SalesOrder στην οποία έχει διατεθεί αυτό το build" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Τοποθεσία Προέλευσης" @@ -887,17 +836,17 @@ msgstr "Κατάσταση Κατασκευής" msgid "Build status code" msgstr "Κωδικός κατάστασης κατασκευής" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Κωδικός Παρτίδας" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Ημερομηνία Δημιουργίας" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελία κατασκευής" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Υπεύθυνος" @@ -947,7 +896,7 @@ msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτή την ε msgid "External Link" msgstr "Εξωτερικοί σύνδεσμοι" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL" @@ -982,7 +931,7 @@ msgstr "Η παραγγελία κατασκευής {build} έχει ολοκλ msgid "A build order has been completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθ msgid "Build output does not match Build Order" msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Η ποσότητα δεν μπορεί να είναι μεγαλύτερη από την παραγόμενη ποσότητα" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Το προϊόν κατασκευής {serial} δεν έχει περάσει όλες τις απαιτούμενες δοκιμές" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "Αντικείμενο κατασκευής" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακ msgid "Selected stock item does not match BOM line" msgstr "Το επιλεγμένο στοιχείο αποθέματος δεν ταιριάζει με τη γραμμή ΤΥ" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Στοιχείο Αποθέματος" @@ -1094,366 +1043,366 @@ msgstr "Εγκατάσταση σε" msgid "Destination stock item" msgstr "Αποθήκη προορισμού" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Κατασκευή Εξόδου" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Το εξερχόμενο μέρος δεν ταιριάζει με το μέρος BuildOrder" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Αυτή η έξοδος κατασκευής δεν έχει εκχωρηθεί πλήρως" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Ακέραιη ποσότητα που απαιτείται για ανιχνεύσιμα μέρη" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Ακέραιη ποσότητα που απαιτείται, καθώς ο λογαριασμός των υλικών περιέχει ανιχνεύσιμα μέρη" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Σειριακοί αριθμοί" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Τοποθεσία" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Αυτόματη Κατανομή Σειριακών Αριθμών" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Αυτόματη κατανομή των απαιτούμενων στοιχείων με τους αντίστοιχους σειριακούς αριθμούς" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Οι παρακάτω σειριακοί αριθμοί υπάρχουν ήδη ή δεν είναι έγκυροι" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Πρέπει να παρέχεται μια λίστα με τα αποτελέσματα κατασκευής" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Θέση αποθέματος για απορριφθείσες παραγωγές" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Απόρριψη Κατανομών" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Απορρίψτε τυχόν κατανομές αποθέματος για παραγωγές που έχουν απορριφθεί" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Αιτία απόρριψης προϊόντων κατασκευής" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Τοποθεσία για ολοκληρωμένα προϊόντα κατασκευής" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Κατάσταση" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Αποδοχή Ελλιπούς Δέσμευσης" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Ολοκλήρωσε τα προϊόντα εάν το απόθεμα δεν έχει δεσμευτεί πλήρως" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Αφαίρεση Ατελείωτων Προϊόντων" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Διαγράψτε τυχόν προϊόντα κατασκευής που δεν έχουν ολοκληρωθεί" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Δεν επιτρέπεται" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Αποδοχή ως κατανάλωση για αυτή την παραγγελία κατασκευής" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Αποδέσμευση πριν από την ολοκλήρωση αυτής της παραγγελίας κατασκευής" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Υπερ-δεσμευμένο Απόθεμα" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Πώς θέλετε να χειριστείτε το επιπλέον απόθεμα που έχει δεσμευτεί στην παραγγελία κατασκευής" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Μερικά στοιχεία αποθέματος έχουν υπερ-δεσμευτεί" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Αποδοχή Μη Δεσμευμένων" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Αποδεχτείτε ότι αντικείμενα αποθέματος δεν έχουν δεσμευτεί πλήρως σε αυτή την παραγγελία κατασκευής" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Το απαιτούμενο απόθεμα δεν έχει δεσμευτεί πλήρως" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Αποδοχή Μη Ολοκληρωμένων" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Αποδεχτείτε ότι ο απαιτούμενος αριθμός προϊόντων κατασκευής δεν έχει ολοκληρωθεί" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Ο απαιτούμενος αριθμός προϊόντων δεν έχει ολοκληρωθεί" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Η παραγγελία κατασκευής έχει ελλιπή προϊόντα" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Γραμμή Κατασκευής" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Προϊόν Κατασκευής" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Το προϊόν κατασκευής πρέπει να δείχνει στην ίδια κατασκευή" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Αντικείμενο Γραμμής Κατασκευής" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part πρέπει να δείχνει στο ίδιο εξάρτημα με τη εντολή κατασκευής" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Ακυρώθηκε" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Ολοκληρώθηκε" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Χρήστης" @@ -1594,7 +1543,7 @@ msgstr "Χρήστης" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Σύνδεσμος" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Συνημμένο" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Αρχείο Δεδομένων" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Ο έλεγχος εργασίας στο παρασκήνιο απέτυχε" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Απεστάλη στον πελάτη" msgid "Returned from customer" msgstr "Επιστράφηκε από πελάτη" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po index e21e92bf38..2e0624fd82 100644 --- a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/src/backend/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: 2025-02-14 08:16+0000\n" +"POT-Creation-Date: 2025-02-23 10:40+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,58 +18,50 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -85,7 +77,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -101,14 +93,14 @@ msgstr "" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -121,42 +113,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -344,11 +336,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -369,247 +361,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -642,20 +592,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -664,7 +613,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -673,9 +622,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -740,16 +689,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -757,7 +706,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -769,7 +718,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -782,7 +731,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -818,9 +767,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -848,7 +797,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -888,17 +837,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -935,7 +884,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -948,7 +897,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -983,7 +932,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -999,18 +948,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1023,11 +972,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1071,11 +1020,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1095,366 +1044,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1480,7 +1429,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1584,10 +1533,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1595,7 +1544,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1620,7 +1569,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1684,14 +1633,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1716,11 +1665,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1768,7 +1716,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1838,7 +1786,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1851,7 +1799,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1867,7 +1815,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1907,7 +1855,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1923,7 +1871,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2007,7 +1955,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2048,7 +1996,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2166,1065 +2114,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3545,13 +3509,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3728,7 +3692,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3745,8 +3709,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3774,7 +3738,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3794,11 +3758,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3806,7 +3770,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3827,7 +3791,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3837,16 +3801,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3862,7 +3826,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3886,15 +3850,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3906,7 +3870,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3934,6 +3898,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4010,7 +3978,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4430,7 +4398,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4836,11 +4804,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4880,7 +4848,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4980,7 +4948,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5062,7 +5030,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5070,7 +5038,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5078,7 +5046,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5106,1249 +5074,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6408,7 +6316,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6505,75 +6413,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6638,7 +6546,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6672,41 +6580,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6937,7 +6845,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7156,7 +7064,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7282,67 +7190,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7494,123 +7402,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7630,7 +7538,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7719,7 +7627,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7735,7 +7643,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7791,136 +7699,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7996,7 +7904,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8025,7 +7933,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8102,79 +8010,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8306,11 +8214,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8318,47 +8226,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8424,31 +8324,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8456,55 +8356,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po index 0dab0a727d..4b5336c5af 100644 --- a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "endpoint API no encontrado" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Lista de artículos no válida" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Filtros proporcionados inválidos" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "No se encontraron elementos para eliminar" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "El usuario no tiene permiso para ver este modelo" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (de nuevo)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Confirmación de dirección de email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Debe escribir el mismo correo electrónico cada vez." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Registro MFA está deshabilitado." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "La dirección de correo electrónico principal proporcionada no es válida." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "El dominio de correo electrónico proporcionado no está aprobado." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registro deshabilitado." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "No se pudo convertir {original} a {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -100,14 +92,14 @@ msgstr "Ingrese la fecha" msgid "Invalid decimal value" msgstr "Número decimal no válido" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notas" @@ -120,42 +112,42 @@ msgstr "El valor '{name}' no aparece en formato de patrón" msgid "Provided value does not match required pattern: " msgstr "El valor proporcionado no coincide con el patrón requerido: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "No se puede serializar más de 1000 elementos a la vez" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "No se ha proporcionado un número de serie" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Serie duplicada" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo no válido {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rango del grupo {group} supera la cantidad permitida ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Numeros de serie no encontrados" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Los números de serie únicos ({len(serials)}) debe coincidir con la cantidad ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Eliminar etiquetas HTML de este valor" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "Los datos contienen contenido de marcado prohibido" @@ -343,11 +335,11 @@ msgstr "Chino (Simplificado)" msgid "Chinese (Traditional)" msgstr "Chino (Tradicional)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Iniciar sesión en la aplicación" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Correo electrónico" @@ -368,247 +360,205 @@ msgstr "Metadatos del complemento" msgid "JSON metadata field, for use by external plugins" msgstr "Campo de metadatos JSON, para uso por complementos externos" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Patrón con formato incorrecto" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Clave de formato especificado desconocida" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Falta la clave de formato necesaria" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "El campo de servidor no puede estar vacío" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "La referencia debe coincidir con la expresión regular {pattern}" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "El número de referencia es demasiado grande" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Los nombres duplicados no pueden existir bajo el mismo padre" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Selección no válida" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nombre" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Descripción" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Descripción (opcional)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Ruta" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Notas de Markdown (opcional)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Datos de código de barras" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Datos de código de barras de terceros" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash del Código de barras" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hash único de datos de código de barras" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Código de barras existente encontrado" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Fallo en la tarea" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Error de servidor" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Se ha registrado un error por el servidor." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Debe ser un número válido" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Moneda" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Seleccionar moneda de las opciones disponibles" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nombre de usuario" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Nombre" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Nombre del usuario" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Apellido" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Apellido del usuario" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Dirección de correo del usuario" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personal" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Tiene este usuario permisos de personal" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superusuario" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Es este usuario un superusuario" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Activo" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Esta cuenta de usuario está activa" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "No tiene permiso para cambiar este rol de usuario." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Solo los superusuarios pueden crear nuevos usuarios" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Su cuenta ha sido creada." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Por favor, utilice la función de restablecer la contraseña para iniciar sesión" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Bienvenido a InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Valor inválido" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Archivo de datos" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Seleccione el archivo para subir" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Formato de archivo no soportado" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "El archivo es demasiado grande" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "No hay columnas en el archivo" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "No hay filas de datos en el archivo" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "No se proporcionaron filas de datos" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "No hay columnas de datos proporcionadas" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Falta la columna requerida: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Columna duplicada: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Imagen remota" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL de imagen remota" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "La descarga de imágenes desde la URL remota no está habilitada" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Error al descargar la imagen desde la URL remota" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Construcción o Armado Superior" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Parte" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Categoría" @@ -739,16 +688,16 @@ msgstr "Completado después" msgid "Build must be cancelled before it can be deleted" msgstr "La compilación debe cancelarse antes de poder ser eliminada" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Consumible" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opcional" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Montaje" @@ -756,7 +705,7 @@ msgstr "Montaje" msgid "Tracked" msgstr "Rastreado" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Comprobable" @@ -768,7 +717,7 @@ msgstr "Pedido pendiente" msgid "Allocated" msgstr "Asignadas" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Disponible" msgid "Build Order" msgstr "Construir órden" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Construir órdenes" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Número de orden de construcción o armado" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referencia de orden de venta" msgid "SalesOrder to which this build is allocated" msgstr "Orden de Venta a la que se asigna" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Ubicación de la fuente" @@ -887,17 +836,17 @@ msgstr "Estado de la construcción" msgid "Build status code" msgstr "Código de estado de construcción" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Numero de lote" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Número de lote de este producto final" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Fecha de Creación" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "El usuario que emitió esta orden" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" @@ -947,7 +896,7 @@ msgstr "Usuario o grupo responsable de esta orden de construcción" msgid "External Link" msgstr "Link externo" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Enlace a URL externa" @@ -982,7 +931,7 @@ msgstr "El pedido {build} ha sido procesado" msgid "A build order has been completed" msgstr "Pedido #[order] ha sido procesado" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Los números de serie deben ser proporcionados para las partes rastreables" @@ -998,18 +947,18 @@ msgstr "La construcción de la salida ya está completa" msgid "Build output does not match Build Order" msgstr "La salida de la construcción no coincide con el orden de construcción" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "La cantidad debe ser mayor que cero" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "La cantidad no puede ser mayor que la cantidad de salida" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas" @@ -1022,11 +971,11 @@ msgstr "Construir línea de pedido" msgid "Build object" msgstr "Ensamblar equipo" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "La cantidad debe ser 1 para el stock serializado" msgid "Selected stock item does not match BOM line" msgstr "El artículo de almacén selelccionado no coincide con la línea BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Artículo de stock" @@ -1094,366 +1043,366 @@ msgstr "Instalar en" msgid "Destination stock item" msgstr "Artículo de stock de destino" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Nivel de construcción" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nombre de parte" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Etiqueta del código del proyecto" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Crear construcciones hijas" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Generar automáticamente órdenes de construcción hijas" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Resultado de la construcción o armado" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "La salida de construcción no coincide con la construcción padre" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "La parte de salida no coincide con la parte de la Orden de Construcción" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Esta salida de construcción ya ha sido completada" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Esta salida de construcción no está completamente asignada" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Ingrese la cantidad para la producción de la construcción" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Cantidad entera requerida para partes rastreables" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Cantidad entera requerida, ya que la factura de materiales contiene partes rastreables" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Números de serie" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Introduzca los números de serie de salidas de construcción" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Ubicación" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Ubicación de stock para objetos construidos" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Autoasignar Números de Serie" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Los siguientes números seriales ya existen o son inválidos" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Debe proporcionarse una lista de salidas de construcción" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Ubicación de almacén para salidas descartadas" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Descartar asignaciones" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Descartar cualquier asignación de existencias para las salidas descartadas" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Razón para descartar la salida de ensamble(s)" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Ubicación para las salidas de construcción completadas" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Estado" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Aceptar Asignación Incompleta" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Completar salidas si el inventario no se ha asignado completamente" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Consumir Stock Asignado" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Consume cualquier stock que ya ha sido asignado a esta construcción" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Eliminar salidas incompletas" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Eliminar cualquier salida de construcción que no se haya completado" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "No permitido" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Aceptar como consumido por este pedido de construcción" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Liberar antes de completar esta orden de construcción" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Stock sobreasignado" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Cómo quieres manejar los artículos extra de inventario asignados a la orden de construcción" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Algunos artículos de inventario han sido sobreasignados" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Aceptar no asignado" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Aceptar que los artículos de stock no se han asignado completamente a este pedido de construcción" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "El stock requerido no ha sido completamente asignado" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Aceptar incompleto" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Aceptar que el número requerido de salidas de construcción no se han completado" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "La cantidad de construcción requerida aún no se ha completado" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "La orden de construcción tiene órdenes hijas de construcción abiertas" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Orden de construcción debe estar en estado de producción" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "El orden de construcción tiene salidas incompletas" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Linea de ensamble" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Resultado de la construcción o armado" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "La salida de la construcción debe apuntar a la misma construcción" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Crear partida" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part debe apuntar a la misma parte que la orden de construcción" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "El artículo debe estar en stock" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Cantidad disponible ({q}) excedida" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "La salida de la construcción debe especificarse para la asignación de partes rastreadas" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La salida de construcción no se puede especificar para la asignación de partes no rastreadas" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Debe proporcionarse la adjudicación de artículos" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Ubicación de inventario donde las partes deben ser obtenidas (dejar en blanco para tomar de cualquier ubicación)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Excluir ubicación" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Excluir artículos de stock de esta ubicación seleccionada" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Stock intercambiable" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Los artículos de inventario en múltiples ubicaciones se pueden utilizar de forma intercambiable" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Sustituir stock" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Permitir la asignación de partes sustitutas" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Elementos opcionales" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Asignar artículos de la BOM opcionales para construir la orden" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Error al iniciar la tarea de asignación automática" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "Referencia BOM" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "ID de la parte BOM" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "Nombre de parte la BOM" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Parte del proveedor" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Cantidad Asignada" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Referencia de orden de Ensamblado" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Nombre de la categoría por pieza" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Rastreable" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Heredado" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Permitir variantes" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Item de Lista de Materiales" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Stock Asignado" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "En pedido" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "En producción" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Stock externo" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Stock Disponible" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Stock sustituto disponible" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Stock variable disponible" @@ -1479,7 +1428,7 @@ msgstr "Cancelado" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Terminado" @@ -1583,10 +1532,10 @@ msgstr "Cadena de clave debe ser única" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Usuario" @@ -1594,7 +1543,7 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Cantidad de salto de precio" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Precio" @@ -1619,7 +1568,7 @@ msgstr "Nombre para este webhook" msgid "Is this webhook active" msgstr "Está activo este webhook" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "¿El trabajo en este mensaje ha terminado?" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Título" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Enlace" @@ -1715,11 +1664,10 @@ msgstr "Leer" msgid "Was this news item read?" msgstr "¿Esta noticia ya fue leída?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Imágen" @@ -1767,7 +1715,7 @@ msgstr "Definición" msgid "Unit definition" msgstr "Definición de unidad" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Archivo adjunto" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Valor" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Nombre del estado" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Etiqueta" @@ -1866,7 +1814,7 @@ msgstr "Color" msgid "Color that will be displayed in the frontend" msgstr "Color que se mostrará en el frontend" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Modelo" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "Lista de selección" @@ -1922,7 +1870,7 @@ msgstr "Nombre de la lista de selección" msgid "Description of the selection list" msgstr "Descripción de la lista de selección" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "Bloqueado" @@ -2006,7 +1954,7 @@ msgstr "¿Está activa esta entrada de la lista de selección?" msgid "Barcode Scan" msgstr "Escanear código de barras" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Datos" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "Respuesta de datos del escaneo de código de barras" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Resultado" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "Lista de selección bloqueada" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Sin grupo" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "La URL del sitio está bloqueada por su configuración" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Reinicio requerido" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Se ha cambiado una configuración que requiere un reinicio del servidor" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migraciones pendientes" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Número de migraciones de base de datos pendientes" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Nombre de la instancia del servidor" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Descriptor de cadena para la instancia del servidor" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Usar nombre de instancia" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Utilice el nombre de la instancia en la barra de título" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Restringir mostrar 'acerca de'" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Mostrar la modal `about` solo para superusuarios" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nombre de empresa" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Nombre interno de empresa" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL Base" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL base para la instancia del servidor" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Moneda predeterminada" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Seleccione la moneda base para los cálculos de precios" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Monedas admitidas" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Listado de códigos de divisa soportados" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Intervalo de actualización de moneda" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Con qué frecuencia actualizar los tipos de cambio (establecer a cero para desactivar)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "días" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Plugin de Actualización de Moneda" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Plugin de actualización de moneda a usar" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Descargar desde URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Permitir la descarga de imágenes y archivos remotos desde la URL externa" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Límite de tamaño de descarga" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Tamaño máximo de descarga permitido para la imagen remota" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Agente de usuario usado para descargar desde la URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Permitir reemplazar el agente de usuario utilizado para descargar imágenes y archivos desde URL externa (dejar en blanco para el valor predeterminado)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Validación estricta de URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Requerir especificación de esquema al validar URLs" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Actualizar intervalo de actualización" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Con qué frecuencia comprobar actualizaciones (establecer a cero para desactivar)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Copia de seguridad automática" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Activar copia de seguridad automática de los archivos de base de datos y medios" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervalo de respaldo automático" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Especificar número de días entre eventos automatizados de copia de seguridad" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Intervalo de eliminación de tareas" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Los resultados de las tareas en segundo plano se eliminarán después del número especificado de días" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Intervalo de eliminación de registro de errores" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Los registros de errores se eliminarán después del número especificado de días" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Intervalo de eliminación de notificaciones" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Las notificaciones de usuario se eliminarán después del número especificado de días" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Soporte de código de barras" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Habilitar el soporte para escáner de códigos de barras en la interfaz web" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Guardar resultados de código de barras" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Guardar resultados de código de barras en la base de datos" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Número máximo de escaneos de código de barras" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Número máximo de resultados de escaneo de código de barras para almacenar" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Retraso de entrada de código de barras" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Tiempo de retraso en la lectura de códigos de barras" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Soporte para Webcam de código de barras" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Permitir escaneo de código de barras a través de webcam en el navegador" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Mostrar datos del código de barra como texto en el navegador" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Complemento para generar códigos de barra" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Complemento a usar para la generación de datos de códigos de barra internos" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Revisiones de partes" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Habilitar campo de revisión para parte" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Regex IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Patrón de expresión regular para IPN de la parte coincidente" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Permitir IPN duplicado" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Permitir que varias partes compartan el mismo IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Permitir editar IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Permite cambiar el valor de IPN mientras se edita una parte" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Copiar parte de datos BOM" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Copiar datos BOM por defecto al duplicar una parte" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Copiar parámetros de parte" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Copiar datos de parámetro por defecto al duplicar una parte" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Copiar parte de datos de prueba" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Copiar datos de parámetro por defecto al duplicar una parte" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Copiar plantillas de parámetros de categoría" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Copiar plantillas de parámetros de categoría al crear una parte" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Plantilla" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Las partes son plantillas por defecto" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Componente" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Las partes pueden ser usadas como subcomponentes por defecto" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Comprable" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Las partes son comprables por defecto" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Vendible" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Las partes se pueden vender por defecto" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Las partes son rastreables por defecto" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtual" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Las partes son virtuales por defecto" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Mostrar importación en vistas" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Mostrar el asistente de importación en algunas vistas de partes" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Mostrar partes relacionadas" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Mostrar partes relacionadas para una parte" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Datos iniciales de existencias" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Permitir la creación del stock inicial al añadir una nueva parte" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Datos iniciales del proveedor" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Permitir la creación de datos iniciales del proveedor al agregar una nueva parte" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Formato de visualización de Nombre de Parte" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formato para mostrar el nombre de la parte" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Icono por defecto de la categoría de parte" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Icono por defecto de la categoría de parte (vacío significa que no hay icono)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Forzar unidades de parámetro" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Si se proporcionan unidades, los valores de parámetro deben coincidir con las unidades especificadas" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Mínimo de lugares decimales en el precio" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Número mínimo de decimales a mostrar al procesar los datos de precios" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Máximo de lugares decimales en el precio" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Número máximo de decimales a mostrar al procesar los datos de precios" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Usar precios de proveedor" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Incluir descuentos de precios del proveedor en los cálculos generales de precios" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Anulación del historial de compra" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "El precio histórico de compra anula los descuentos de precios del proveedor" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Usar precio del artículo de almacén" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Usar los precios de los datos de inventario introducidos manualmente para los cálculos de precios" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Edad del precio del artículo de almacén" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Excluir artículos de almacén anteriores a este número de días de los cálculos de precios" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Usar precios variantes" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Incluir variantes de precios en los cálculos generales de precios" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Solo variantes activas" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Usar solo partes de variantes activas para calcular los precios de variantes" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervalo de reconstrucción de precios" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Número de días antes de que el precio de la parte se actualice automáticamente" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Precios internos" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Habilitar precios internos para partes" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Anulación del precio interno" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Si está disponible, los precios internos anulan los cálculos del rango de precios" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Habilitar impresión de etiquetas" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Habilitar impresión de etiquetas desde la interfaz web" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "PPP de la imagen de etiqueta" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Resolución DPI al generar archivos de imagen que suministrar para etiquetar complementos de impresión" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Habilitar informes" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Habilitar generación de informes" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Modo de depuración" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Generar informes en modo de depuración (salida HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Registrar errores de reportes" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Registrar errores ocurridos al generar reportes" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Tamaño de página" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Tamaño de página predeterminado para informes PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Seriales únicos globalmente" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Los números de serie para los artículos de inventario deben ser únicos globalmente" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Autollenar números de serie" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Autorellenar números de serie en formularios" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Eliminar existencias agotadas" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Determina el comportamiento por defecto al agotarse un artículo del inventario" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Plantilla de código de lote" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Plantilla para generar códigos de lote por defecto para artículos de almacén" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Expiración de stock" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Habilitar la funcionalidad de expiración de stock" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Vender existencias caducadas" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Permitir venta de existencias caducadas" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Tiempo histórico de Stock" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Número de días de artículos de stock se consideran obsoletos antes de caducar" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Crear Stock Caducado" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Permitir crear con stock caducado" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Control de Stock" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Habilitar control de propiedad sobre ubicaciones de stock y artículos" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Icono por defecto de ubicación de almacén" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Icono por defecto de ubicación de almacén (vacío significa que no hay icono)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Mostrar Articulos de Stock Instalados" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Mostrar los artículos de stock instalados en las tablas de stock" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Permitir transferencia Sin Existencias" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Permitir que artículos del inventario sin existencias puedan ser transferidos entre ubicaciones de inventario" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Patrón de Referencia de Ordenes de Armado" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la Orden de Ensamblado" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Requerir Dueño Responsable" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Se debe asignar un dueño responsable a cada orden" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Requerir Parte Activa" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Impedir la creación de órdenes de fabricación para partes inactivas" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Requerir Parte Bloqueada" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Impedir la creación de órdenes de fabricación para partes bloqueadas" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Impedir la creación de órdenes de fabricación a menos que se haya validado la lista de materiales" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Prevenir la finalización de la orden de construcción hasta que todas las órdenes hijas estén cerradas" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Bloquear hasta que los Tests pasen" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Evitar que las construcciones sean completadas hasta que todas las pruebas requeridas pasen" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Habilitar órdenes de devolución" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Habilitar la funcionalidad de orden de devolución en la interfaz de usuario" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Patrón de referencia de orden de devolución" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Patrón requerido para generar el campo de referencia de devolución de la orden" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Editar ordenes de devolución completadas" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Permitir la edición de ordenes de devolución después de que hayan sido completados" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Patrón de Referencia de Ordenes de Venta" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la orden de venta" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Envío Predeterminado de Ordenes de Venta" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Habilitar la creación de envío predeterminado con ordenes de entrega" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Editar Ordenes de Venta Completados" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Permitir la edición de ordenes de venta después de que hayan sido enviados o completados" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Marcar pedidos enviados como completados" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Los pedidos marcados como enviados se completarán automáticamente, evitando el estado de \"envío\"" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Patrón de Referencia de Orden de Compra" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la Orden de Compra" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Editar Ordenes de Compra Completados" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Permitir la edición de órdenes de venta después de que hayan sido enviados o completados" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Autocompletar Ordenes de compra" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Marcar automáticamente las órdenes de compra como completas cuando se reciben todos los artículos de línea" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Habilitar función de contraseña olvidada" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Activar la función olvido de contraseña en las páginas de inicio de sesión" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Habilitar registro" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Activar auto-registro para usuarios en las páginas de inicio de sesión" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Habilitar SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Habilitar SSO en las páginas de inicio de sesión" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Habilitar registro SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Activar autoregistro a través de SSO para usuarios en las páginas de inicio de sesión" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "Habilitar sincronización de grupo SSO" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Habilitar la sincronización de grupos de Inventree con grupos proporcionados por el IdP" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "Clave de grupo SSO" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "El nombre del atributo reclamado por el grupo proporcionado por el IdP" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "Mapa del grupo SSO" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Un mapeo de grupos SSO a grupos de Inventree locales. Si el grupo local no existe, se creará." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "Eliminar grupos fuera de SSO" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email requerido" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Requiere usuario para suministrar correo al registrarse" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Auto-rellenar usuarios SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Rellenar automáticamente los datos de usuario de la cuenta SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Correo dos veces" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Al registrarse pregunte dos veces a los usuarios por su correo" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Contraseña dos veces" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Al registrarse, preguntar dos veces a los usuarios por su contraseña" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Dominios permitidos" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Restringir el registro a ciertos dominios (separados por comas, comenzando por @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grupo al registrarse" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Grupo al que se asignan nuevos usuarios al registrarse. Si la sincronización de grupo SSO está activada, este grupo sólo se establece si no se puede asignar ningún grupo desde el IdP." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Forzar MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Los usuarios deben utilizar seguridad multifactor." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Comprobar complementos al iniciar" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Comprobar que todos los complementos están instalados en el arranque - habilitar en entornos de contenedores" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Revisar actualizaciones del plugin" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Habilitar comprobaciones periódicas para actualizaciones de plugins instalados" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Habilitar integración de URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Habilitar plugins para añadir rutas de URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Habilitar integración de navegación" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Habilitar plugins para integrar en la navegación" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Habilitar integración de la aplicación" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Habilitar plugins para añadir aplicaciones" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Habilitar integración de programación" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Habilitar plugins para ejecutar tareas programadas" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Habilitar integración de eventos" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Habilitar plugins para responder a eventos internos" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Habilitar integración de interfaz" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Habilitar complementos para integrar en la interfaz de usuario" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funcionalidad de inventario" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Habilite la funcionalidad de inventario para registrar los niveles de existencias y calcular el valor de las existencias" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Excluir Ubicaciones Externas" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Excluir artículos en existencia en ubicaciones externas de los cálculos de inventario" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Periodo de inventario automático" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Número de días entre el registro automático del inventario (establecer en cero para desactivarlo)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Intervalo de borrado de informe" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Los informes de inventario se eliminarán después de un número de días especificado" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Mostrar nombres completos de los usuarios" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Mostrar nombres completos de usuarios en lugar de nombres de usuario" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Habilitar datos de estación de prueba" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Habilitar la recolección de datos de estaciones de prueba para resultados de prueba" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "Crear plantilla al subir" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Crear una nueva plantilla de prueba al subir datos de prueba que no coincidan con una plantilla existente" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Fabricante" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Empresa" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Enlace a información de dirección (externa)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Parte del fabricante" @@ -3744,8 +3708,8 @@ msgstr "Seleccionar parte" msgid "Select manufacturer" msgstr "Seleccionar fabricante" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Nombre del parámetro" msgid "Parameter value" msgstr "Valor del parámetro" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Unidades" @@ -3793,11 +3757,11 @@ msgstr "Las unidades de paquete deben ser mayor que cero" msgid "Linked manufacturer part must reference the same base part" msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Proveedor" @@ -3805,7 +3769,7 @@ msgstr "Proveedor" msgid "Select supplier" msgstr "Seleccionar proveedor" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Unidad de mantenimiento de stock de proveedores" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Descripción de la parte del proveedor" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Descripción de la parte del proveedor" msgid "Note" msgstr "Nota" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "costo base" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Paquetes" @@ -3861,7 +3825,7 @@ msgstr "Cantidad de paquete" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "múltiple" @@ -3885,15 +3849,15 @@ msgstr "Fecha de última actualización de los datos de disponibilidad" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Moneda predeterminada utilizada para este proveedor" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Nombre de la empresa" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "En Stock" @@ -3905,7 +3869,7 @@ msgstr "Clave personalizada de estado" msgid "Additional status information for this item" msgstr "Información adicional de estado para este artículo" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Clave" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "Formato de exportación inválido" +#: importer/models.py:64 +msgid "Data File" +msgstr "Archivo de datos" + #: importer/models.py:65 msgid "Data file to import" msgstr "Archivo de datos a importar" @@ -4009,7 +3977,7 @@ msgstr "Datos de la fila original" msgid "Errors" msgstr "Errores" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Válido" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "La cantidad debe ser un número positivo" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" @@ -4835,11 +4803,11 @@ msgstr "Combinar artículos" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Número de parte interna" @@ -4879,7 +4847,7 @@ msgstr "Seleccione la ubicación de destino para los artículos recibidos" msgid "Enter batch code for incoming stock items" msgstr "Introduzca el código de lote para los artículos de almacén entrantes" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Fecha de Expiración" @@ -4979,7 +4947,7 @@ msgstr "Los siguientes números de serie no están disponibles" msgid "Return order line item" msgstr "Partida de orden de devolución" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "Favoritos" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Profundidad" @@ -5069,7 +5037,7 @@ msgstr "Profundidad" msgid "Filter by category depth" msgstr "Filtrar por profundidad de categoría" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Nivel superior" @@ -5077,7 +5045,7 @@ msgstr "Nivel superior" msgid "Filter by top-level categories" msgstr "Filtrar por categorías de nivel superior" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "En cascada" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "Tiene resultados" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Orden de compra entrante" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Orden de venta saliente" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Validación de Lista de Materiales" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Esta opción debe ser seleccionada" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Categoría de parte" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Categorías de parte" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Ubicación Predeterminada" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Ubicación predeterminada para partes de esta categoría" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Estructural" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Las partes no pueden asignarse directamente a una categoría estructural, pero pueden asignarse a categorías hijas." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Palabras clave predeterminadas" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Palabras clave por defecto para partes en esta categoría" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Icono" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Icono (opcional)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Partes" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Opción no válida para la parte principal" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Ya existe un artículo de almacén con este número de serie" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN duplicado no permitido en la configuración de partes" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "La revisión de parte duplicada ya existe." -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Parte con este nombre, IPN y revisión ya existe." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nombre de la parte" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Es plantilla" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "¿Es esta parte una parte de la plantilla?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Descripción de parte (opcional)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Palabras claves" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Categoría de parte" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Revisión de parte o número de versión" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisión" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "Variante de" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "¿Dónde se almacena este artículo normalmente?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Proveedor por defecto" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Parte de proveedor predeterminada" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Expiración por defecto" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Stock mínimo" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Nivel mínimo de stock permitido" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Unidades de medida para esta parte" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "¿Se puede construir esta parte a partir de otras partes?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "¿Se puede utilizar esta parte para construir otras partes?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "¿Esta parte tiene seguimiento de objetos únicos?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "¿Se puede comprar esta parte a proveedores externos?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "¿Se puede vender esta parte a los clientes?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "¿Está activa esta parte?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "Las partes bloqueadas no pueden ser editadas" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Suma de verificación de BOM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Suma de verificación de BOM almacenada" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "BOM comprobado por" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Fecha BOM comprobada" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Creación de Usuario" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Dueño responsable de esta parte" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Último inventario" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Vender múltiples" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Moneda utilizada para almacenar en caché los cálculos de precios" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Costo mínimo de BOM" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Costo mínimo de partes de componentes" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Costo máximo de BOM" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Costo máximo de partes de componentes" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Costo mínimo de compra" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Costo histórico mínimo de compra" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Costo máximo de compra" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Costo histórico máximo de compra" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Precio interno mínimo" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Costo mínimo basado en precios reducidos internos" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Precio interno máximo" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Costo máximo basado en precios reducidos internos" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Precio mínimo de proveedor" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Precio mínimo de la parte de proveedores externos" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Precio máximo de proveedor" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Precio máximo de la parte de proveedores externos" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Costo mínimo de variante" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Costo mínimo calculado de las partes variantes" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Costo máximo de variante" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Costo máximo calculado de las partes variantes" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Costo mínimo" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Anular el costo mínimo" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Costo máximo" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Reemplazar coste máximo" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Costo mínimo general calculado" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Precio de venta mínimo" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Precio de venta mínimo basado en precios reducidos" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Precio de venta máximo" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Precio de venta máximo basado en precios reducidos" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Costo de venta mínimo" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Precio de venta mínimo histórico" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Costo de Venta Máximo" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Precio de venta máximo histórico" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Número de artículos" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Fecha" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Notas adicionales" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Costo de Stock Mínimo" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Costo mínimo estimado del stock disponible" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Informe" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Número de partes" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nombre de prueba" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Introduzca un nombre para la prueba" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Descripción de prueba" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Introduce la descripción para esta prueba" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Requerido" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "¿Es necesario pasar esta prueba?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Requiere valor" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Adjunto obligatorio" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Opciones" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "El nombre de parámetro en la plantilla tiene que ser único" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Nombre de Parámetro" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Casilla de verificación" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "¿Es este parámetro una casilla de verificación?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opciones válidas para este parámetro (separados por comas)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "Lista de selección para este parámetro" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Opción inválida para el valor del parámetro" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Parte principal" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Plantilla de parámetro" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Valor del parámetro" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Valor predeterminado" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Valor de parámetro por defecto" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID de parte o nombre de parte" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID de Parte" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Valor de ID de parte única" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN de la parte" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Valor IPN de parte" - -#: part/models.py:4130 -msgid "Level" -msgstr "Nivel" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Nivel de BOM" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Seleccionar parte principal" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Sub parte" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Seleccionar parte a utilizar en BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Cantidad del artículo en BOM" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Este artículo BOM es opcional" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Exceso" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Referencia de artículo de BOM" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Notas del artículo de BOM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Suma de verificación" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Suma de verificación de línea de BOM" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Validado" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Este artículo de BOM ha sido validado" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este artículo BOM es heredado por BOMs para partes variantes" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "La cantidad debe ser un valor entero para las partes rastreables" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Debe especificar la subparte" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Ítem de BOM sustituto" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sustituta no puede ser la misma que la parte principal" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Artículo BOM superior" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Sustituir parte" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Seleccionar parte relacionada" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "Nota para esta relación" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Categoría principal de parte" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Subcategorías" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Moneda de compra de ítem de stock" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Cantidad especulativa" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "ID del modelo" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "No hay partes seleccionadas" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Seleccionar categoría" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Parte original" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Seleccione la parte original a duplicar" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Copiar Imagen" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Copiar imagen desde la parte original" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Copiar BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Copiar la factura de materiales de la parte original" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Copiar Parámetros" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Copiar datos del parámetro de la parte original" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Copiar Notas" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Cantidad Inicial de Stock" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Seleccione proveedor (o déjelo en blanco para saltar)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Seleccionar fabricante (o dejar en blanco para saltar)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Número de parte del fabricante" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "La empresa seleccionada no es un proveedor válido" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "La empresa seleccionada no es un fabricante válido" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Nombre de categoría" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "En construcción" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Elementos de stock" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Proveedores" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Inventario Total" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Duplicar Parte" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Stock Inicial" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Crear Parte con cantidad inicial de stock" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Información del proveedor" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Añadir información inicial del proveedor para esta parte" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Copiar Parámetros de Categoría" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Imagen Existente" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "El archivo de imagen no existe" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Generar informe" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Actualizar partes" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Falló la comprobación en segundo plano del worker" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Precio mínimo" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Anular el valor calculado para precio mínimo" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Precio mínimo de moneda" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Precio máximo" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Precio máximo de moneda" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Actualizar" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "El precio mínimo no debe ser mayor que el precio máximo" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "El precio máximo no debe ser inferior al precio mínimo" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Puede construir" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Seleccionar parte de la que copiar BOM" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Eliminar Datos Existentes" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Eliminar artículos BOM existentes antes de copiar" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Incluye Heredado" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Incluye artículos BOM que son heredados de partes con plantillas" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Omitir filas no válidas" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Activar esta opción para omitir filas inválidas" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Copiar partes sustitutas" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Limpiar BOM Existente" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Varios resultados encontrados" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "No se encontraron partes coincidentes" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "La parte no está designada como componente" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Cantidad no proporcionada" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Cantidad no válida" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Se requiere al menos un artículo BOM" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID de Parte" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "No se encontró ninguna coincidencia para los datos del código de barra msgid "Match found for barcode data" msgstr "Coincidencia encontrada para datos de códigos de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Proporciona soporte nativo para códigos de barras" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Notificaciones de InvenTree" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Métodos de notificaciones salientes integrados" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Habilitar notificaciones por correo electrónico" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Permitir el envío de correos electrónicos para notificaciones de eventos" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Activar notificaciones de slack" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Permitir el envío de mensajes por canal de slack para notificaciones de eventos" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "URL de webhook entrante de Slack" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL que se utiliza para enviar mensajes a un canal de slack" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Abrir enlace" @@ -6936,7 +6844,7 @@ msgstr "Complemento integrado" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Complemento" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Altura [mm]" msgid "Label height, specified in mm" msgstr "Altura de la etiqueta, especificada en mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Progreso" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Fragmento" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Archivo fragmento de informe" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Descripción de archivo de fragmento" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Activo" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Reportar archivo de activos" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Descripción del archivo de activos" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Ubicación principal" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filtrar por ubicación principal" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "Nombre de pieza (insensible a mayúsculas y minúsculas)" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "El nombre de la pieza (insensible a mayúsculas y minúsculas)" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "Nombre de la pieza (expresión regular)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "Pieza IPN (insensible a mayúsculas y minúsculas)" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "Pieza IPN (insensible a mayúsculas y minúsculas)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "Pieza IPN (expresión regular)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "Stock mínimo" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "Stock máximo" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Código de estado" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Ubicación externa" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "Instalado en otro artículo de existencias" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Árbol de piezas" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "Actualizado antes" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "Actualizado después" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "Inventario antes" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "Inventario después" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Desactualizado" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Cantidad requerida" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Debe suministrarse una parte válida" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Ubicación de Stock" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Ubicaciones de Stock" @@ -7718,7 +7626,7 @@ msgstr "Seleccione una parte del proveedor correspondiente para este artículo d msgid "Where is this stock item located?" msgstr "¿Dónde se encuentra este artículo de stock?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Empaquetar este artículo de stock se almacena en" @@ -7734,7 +7642,7 @@ msgstr "¿Está este artículo instalado en otro artículo?" msgid "Serial number for this item" msgstr "Número de serie para este artículo" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Código de lote para este artículo de stock" @@ -7790,136 +7698,136 @@ msgstr "Precio de compra único en el momento de la compra" msgid "Converted to part" msgstr "Convertido a parte" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "La parte no está establecida como rastreable" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Cantidad debe ser un entero" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "Los números de serie deben ser proporcionados como una lista" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "La cantidad no coincide con los números de serie" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Artículo de stock ha sido asignado a un pedido de venta" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Artículo de stock está instalado en otro artículo" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Artículo de stock contiene otros artículos" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Artículo de stock ha sido asignado a un cliente" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "El artículo de stock está en producción" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Stock serializado no puede ser combinado" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Artículos de Stock Duplicados" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Los artículos de stock deben referirse a la misma parte" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Los artículos de stock deben referirse a la misma parte del proveedor" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Los códigos de estado del stock deben coincidir" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stock no se puede mover porque no está en stock" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Notas de entrada" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Debe proporcionarse un valor para esta prueba" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "El archivo adjunto debe ser subido para esta prueba" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Resultado de la prueba" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Valor de salida de prueba" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Adjunto de resultados de prueba" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Notas de prueba" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Finalizó" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Número de pieza del proveedor" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Expirado" @@ -8024,7 +7932,7 @@ msgstr "La cantidad no debe exceder la cantidad disponible de stock ({q})" msgid "Enter serial numbers for new items" msgstr "Introduzca números de serie para nuevos artículos" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Ubicación de stock de destino" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Sub-ubicación" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "La parte debe ser vendible" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "El artículo está asignado a una orden de venta" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "El artículo está asignado a una orden de creación" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Cliente para asignar artículos de stock" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "La empresa seleccionada no es un cliente" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Notas de asignación de stock" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Debe proporcionarse una lista de artículos de stock" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Notas de fusión de stock" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Permitir proveedores no coincidentes" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Permitir fusionar artículos de stock con diferentes partes de proveedor" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Permitir estado no coincidente" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Permitir fusionar artículos de stock con diferentes códigos de estado" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Debe proporcionar al menos dos artículos de stock" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Sin cambios" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Valor de clave primaria de Stock" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "No hay existencias del artículo" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Notas de transacción de stock" @@ -8305,11 +8213,11 @@ msgstr "Enviar al cliente" msgid "Returned from customer" msgstr "Devolución del cliente" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Permiso Denegado" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "No tiene permisos para ver esta página." @@ -8317,47 +8225,39 @@ msgstr "No tiene permisos para ver esta página." msgid "Authentication Failure" msgstr "Falla de autenticación" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Has cerrado sesión en InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Iniciar sesión" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Página No Encontrada" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "La página solicitada no existe" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Error Interno Del Servidor" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Consulte el registro de errores en la interfaz de administración para más detalles" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "El Sitio está en Mantenimiento" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "El sitio está actualmente en mantenimiento y debería estar listo pronto!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo de InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Reinicio del Servidor Requerido" @@ -8423,31 +8323,31 @@ msgstr "Haga clic en el siguiente enlace para ver esta parte" msgid "Minimum Quantity" msgstr "Cantidad Mínima" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Usuarios" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Seleccione qué usuarios están asignados a este grupo" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Información personal" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Permisos" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Fechas importantes" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Token revocado" @@ -8455,55 +8355,55 @@ msgstr "Token revocado" msgid "Token has expired" msgstr "Token expirado" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "Token del API" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "Tokens del API" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Nombre del token" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Nombre personalizado del token" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Fecha de expiración del token" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Última conexión" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Última vez que se usó el token" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Revocado" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Verificación de Inventario" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Ordenes de compra" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Órdenes de venta" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Ordenes de devolución" diff --git a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po index eb781bd179..3d81c00783 100644 --- a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Language: es_MX\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "endpoint API no encontrado" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Lista de artículos inválida" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Filtros proporcionados inválidos" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "No se encontraron artículos para eliminar" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "El usuario no tiene permiso para ver este modelo" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "Correo de verificación enviado." - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (de nuevo)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Confirmación de dirección de email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Debe escribir el mismo correo electrónico cada vez." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Registro MFA está deshabilitado." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "La dirección de correo electrónico principal proporcionada no es válida." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "El dominio de correo electrónico proporcionado no está aprobado." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registro deshabilitado." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "No se pudo convertir {original} a {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -100,14 +92,14 @@ msgstr "Ingrese la fecha" msgid "Invalid decimal value" msgstr "Número decimal inválido" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notas" @@ -120,42 +112,42 @@ msgstr "El valor '{name}' no aparece en formato de patrón" msgid "Provided value does not match required pattern: " msgstr "El valor proporcionado no coincide con el patrón requerido: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "No se puede serializar más de 1000 artículos a la vez" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "No se ha proporcionado un número de serie" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Serie duplicada" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo inválido: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Rango del grupo {group} supera la cantidad permitida ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Numeros de serie no encontrados" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Los números de serie únicos ({len(serials)}) debe coincidir con la cantidad ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Eliminar etiquetas HTML de este valor" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "Los datos contienen contenido de markdown prohibido" @@ -343,11 +335,11 @@ msgstr "Chino (Simplificado)" msgid "Chinese (Traditional)" msgstr "Chino (Tradicional)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Iniciar sesión en la aplicación" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Correo electrónico" @@ -368,247 +360,205 @@ msgstr "Metadatos del complemento" msgid "JSON metadata field, for use by external plugins" msgstr "Campo de metadatos JSON, para uso por complementos externos" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Patrón con formato incorrecto" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Clave de formato especificado desconocida" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Falta la clave de formato necesaria" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "El campo de servidor no puede estar vacío" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "La referencia debe coincidir con la expresión regular {pattern}" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "El número de referencia es demasiado grande" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Los nombres duplicados no pueden existir bajo el mismo padre" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Selección no válida" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nombre" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Descripción" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Descripción (opcional)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Ruta" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Notas de Markdown (opcional)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Datos de código de barras" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Datos de código de barras de terceros" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash del Código de barras" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hash único de datos de código de barras" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Código de barras existente encontrado" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Fallo en la tarea" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Error de servidor" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Se ha registrado un error por el servidor." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Debe ser un número válido" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Moneda" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Seleccionar moneda de las opciones disponibles" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nombre de usuario" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Nombre" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Nombre del usuario" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Apellido" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Apellido del usuario" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Dirección de correo del usuario" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personal" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Tiene este usuario permisos de personal" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superusuario" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Es este usuario un superusuario" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Activo" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Esta cuenta de usuario está activa" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "No tiene permiso para cambiar este rol de usuario." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Solo los superusuarios pueden crear nuevos usuarios" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Su cuenta ha sido creada." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Por favor, utilice la función de restablecer la contraseña para iniciar sesión" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Bienvenido a InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Valor inválido" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Archivo de datos" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Seleccione el archivo para subir" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Formato de archivo no soportado" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "El archivo es demasiado grande" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "No hay columnas en el archivo" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "No hay filas de datos en el archivo" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "No se proporcionaron filas de datos" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "No hay columnas de datos proporcionadas" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Falta la columna requerida: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Columna duplicada: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Imagen remota" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL de imagen remota" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "La descarga de imágenes desde la URL remota no está habilitada" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Error al descargar la imagen desde la URL remota" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Construcción o Armado Superior" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Incluye Variantes" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Incluye Variantes" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Incluye Variantes" msgid "Part" msgstr "Parte" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Categoría" @@ -739,16 +688,16 @@ msgstr "Completado después de" msgid "Build must be cancelled before it can be deleted" msgstr "La compilación debe cancelarse antes de poder ser eliminada" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Consumible" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opcional" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Montaje" @@ -756,7 +705,7 @@ msgstr "Montaje" msgid "Tracked" msgstr "Rastreado" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Comprobable" @@ -768,7 +717,7 @@ msgstr "Pedido pendiente" msgid "Allocated" msgstr "Asignadas" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Disponible" msgid "Build Order" msgstr "Construir órden" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Construir órdenes" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Número de orden de construcción o armado" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referencia de orden de venta" msgid "SalesOrder to which this build is allocated" msgstr "Orden de Venta a la que se asigna" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Ubicación de la fuente" @@ -887,17 +836,17 @@ msgstr "Estado de la construcción" msgid "Build status code" msgstr "Código de estado de construcción" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Numero de lote" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Número de lote de este producto final" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Fecha de Creación" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "El usuario que emitió esta orden" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" @@ -947,7 +896,7 @@ msgstr "Usuario o grupo responsable de esta orden de construcción" msgid "External Link" msgstr "Link externo" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Enlace a URL externa" @@ -982,7 +931,7 @@ msgstr "El pedido {build} ha sido procesado" msgid "A build order has been completed" msgstr "Pedido #[order] ha sido procesado" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Los números de serie deben ser proporcionados para las partes rastreables" @@ -998,18 +947,18 @@ msgstr "La construcción de la salida ya está completa" msgid "Build output does not match Build Order" msgstr "La salida de la construcción no coincide con el orden de construcción" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "La cantidad debe ser mayor que cero" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "La cantidad no puede ser mayor que la cantidad de salida" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La construcción {serial} no ha pasado todas las pruebas requeridas" @@ -1022,11 +971,11 @@ msgstr "Construir línea de pedido" msgid "Build object" msgstr "Ensamblar equipo" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "La cantidad debe ser 1 para el stock serializado" msgid "Selected stock item does not match BOM line" msgstr "El artículo de almacén selelccionado no coincide con la línea BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Artículo de stock" @@ -1094,366 +1043,366 @@ msgstr "Instalar en" msgid "Destination stock item" msgstr "Artículo de stock de destino" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Nivel de construcción" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nombre de parte" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Etiqueta del código del proyecto" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Crear construcciones hijas" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Generar automáticamente órdenes de construcción hijas" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Resultado de la construcción o armado" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "La salida de construcción no coincide con la construcción padre" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "La parte de salida no coincide con la parte de la Orden de Construcción" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Esta salida de construcción ya ha sido completada" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Esta salida de construcción no está completamente asignada" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Ingrese la cantidad para la producción de la construcción" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Cantidad entera requerida para partes rastreables" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Cantidad entera requerida, ya que la factura de materiales contiene partes rastreables" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Números de serie" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Introduzca los números de serie de salidas de construcción" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Ubicación" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Ubicación de stock para objetos construidos" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Autoasignar Números de Serie" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Asignar automáticamente los artículos requeridos con números de serie coincidentes" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Los siguientes números seriales ya existen o son inválidos" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Debe proporcionarse una lista de salidas de construcción" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Ubicación de almacén para salidas descartadas" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Descartar asignaciones" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Descartar cualquier asignación de existencias para las salidas descartadas" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Razón para descartar la salida de ensamble(s)" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Ubicación para las salidas de construcción completadas" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Estado" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Aceptar Asignación Incompleta" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Completar salidas si el inventario no se ha asignado completamente" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Consumir Stock Asignado" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Consume cualquier stock que ya ha sido asignado a esta construcción" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Eliminar salidas incompletas" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Eliminar cualquier salida de construcción que no se haya completado" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "No permitido" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Aceptar como consumido por este pedido de construcción" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Liberar antes de completar esta orden de construcción" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Stock sobreasignado" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Cómo quieres manejar los artículos extra de inventario asignados a la orden de construcción" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Algunos artículos de inventario han sido sobreasignados" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Aceptar no asignado" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Aceptar que los artículos de stock no se han asignado completamente a este pedido de construcción" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "El stock requerido no ha sido completamente asignado" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Aceptar incompleto" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Aceptar que el número requerido de salidas de construcción no se han completado" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "La cantidad de construcción requerida aún no se ha completado" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "La orden de construcción tiene órdenes hijas de construcción abiertas" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Orden de construcción debe estar en estado de producción" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "El orden de construcción tiene salidas incompletas" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Linea de ensamble" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Resultado de la construcción o armado" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "La salida de la construcción debe apuntar a la misma construcción" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Crear partida" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part debe apuntar a la misma parte que la orden de construcción" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "El artículo debe estar en stock" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Cantidad disponible ({q}) excedida" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "La salida de la construcción debe especificarse para la asignación de partes rastreadas" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La salida de construcción no se puede especificar para la asignación de partes no rastreadas" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Debe proporcionarse la adjudicación de artículos" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Ubicación de inventario donde las partes deben ser obtenidas (dejar en blanco para tomar de cualquier ubicación)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Excluir ubicación" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Excluir artículos de stock de esta ubicación seleccionada" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Stock intercambiable" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Los artículos de inventario en múltiples ubicaciones se pueden utilizar de forma intercambiable" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Sustituir stock" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Permitir la asignación de partes sustitutas" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Elementos opcionales" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Asignar artículos de la BOM opcionales para construir la orden" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Error al iniciar la tarea de asignación automática" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "Referencia BOM" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "ID de la parte BOM" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "Nombre de parte la BOM" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Parte del proveedor" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Cantidad Asignada" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Referencia de orden de Ensamblado" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Nombre de la categoría por pieza" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Rastreable" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Heredado" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Permitir variantes" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Item de Lista de Materiales" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Stock Asignado" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "En pedido" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "En producción" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Stock externo" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Stock Disponible" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Stock sustituto disponible" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Stock variable disponible" @@ -1479,7 +1428,7 @@ msgstr "Cancelado" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Terminado" @@ -1583,10 +1532,10 @@ msgstr "Cadena de clave debe ser única" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Usuario" @@ -1594,7 +1543,7 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Cantidad de salto de precio" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Precio" @@ -1619,7 +1568,7 @@ msgstr "Nombre para este webhook" msgid "Is this webhook active" msgstr "Está activo este webhook" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "¿El trabajo en este mensaje ha terminado?" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Título" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Enlace" @@ -1715,11 +1664,10 @@ msgstr "Leer" msgid "Was this news item read?" msgstr "¿Esta noticia ya fue leída?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Imágen" @@ -1767,7 +1715,7 @@ msgstr "Definición" msgid "Unit definition" msgstr "Definición de unidad" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Archivo adjunto" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Clave lógica del estado que es igual a este estado personalizado en la lógica de negocios" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Valor" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Nombre del estado" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Etiqueta" @@ -1866,7 +1814,7 @@ msgstr "Color" msgid "Color that will be displayed in the frontend" msgstr "Color que se mostrará en el frontend" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Modelo" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "Lista de selección" @@ -1922,7 +1870,7 @@ msgstr "Nombre de la lista de selección" msgid "Description of the selection list" msgstr "Descripción de la lista de selección" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "Bloqueado" @@ -2006,7 +1954,7 @@ msgstr "¿Está activa esta entrada de la lista de selección?" msgid "Barcode Scan" msgstr "Escanear código de barras" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Datos" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "Respuesta de datos del escaneo de código de barras" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Resultado" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "Lista de selección bloqueada" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Sin grupo" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "La URL del sitio está bloqueada por su configuración" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Reinicio requerido" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Se ha cambiado una configuración que requiere un reinicio del servidor" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migraciones pendientes" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Número de migraciones de base de datos pendientes" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Nombre de la instancia del servidor" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Descriptor de cadena para la instancia del servidor" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Usar nombre de instancia" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Utilice el nombre de la instancia en la barra de título" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Restringir mostrar 'acerca de'" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Mostrar la modal `about` solo para superusuarios" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nombre de empresa" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Nombre interno de empresa" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL Base" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL base para la instancia del servidor" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Moneda predeterminada" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Seleccione la moneda base para los cálculos de precios" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Monedas admitidas" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Listado de códigos de divisa soportados" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Intervalo de actualización de moneda" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Con qué frecuencia actualizar los tipos de cambio (establecer a cero para desactivar)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "días" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Plugin de Actualización de Moneda" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Plugin de actualización de moneda a usar" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Descargar desde URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Permitir la descarga de imágenes y archivos remotos desde la URL externa" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Límite de tamaño de descarga" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Tamaño máximo de descarga permitido para la imagen remota" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Agente de usuario usado para descargar desde la URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Permitir reemplazar el agente de usuario utilizado para descargar imágenes y archivos desde URL externa (dejar en blanco para el valor predeterminado)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Validación estricta de URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Requerir especificación de esquema al validar URLs" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Actualizar intervalo de actualización" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Con qué frecuencia comprobar actualizaciones (establecer a cero para desactivar)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Copia de seguridad automática" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Activar copia de seguridad automática de los archivos de base de datos y medios" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervalo de respaldo automático" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Especificar número de días entre eventos automatizados de copia de seguridad" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Intervalo de eliminación de tareas" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Los resultados de las tareas en segundo plano se eliminarán después del número especificado de días" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Intervalo de eliminación de registro de errores" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Los registros de errores se eliminarán después del número especificado de días" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Intervalo de eliminación de notificaciones" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Las notificaciones de usuario se eliminarán después del número especificado de días" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Soporte de código de barras" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Habilitar el soporte para escáner de códigos de barras en la interfaz web" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Guardar resultados de código de barras" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Guardar resultados de código de barras en la base de datos" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Número máximo de escaneos de código de barras" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Número máximo de resultados de escaneo de código de barras para almacenar" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Retraso de entrada de código de barras" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Tiempo de retraso en la lectura de códigos de barras" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Soporte para Webcam de código de barras" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Permitir escaneo de código de barras a través de webcam en el navegador" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Mostrar datos del código de barra como texto en el navegador" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Complemento para generar códigos de barra" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Complemento a usar para la generación de datos de códigos de barra internos" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Revisiones de partes" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Habilitar campo de revisión para parte" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Regex IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Patrón de expresión regular para IPN de la parte coincidente" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Permitir IPN duplicado" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Permitir que varias partes compartan el mismo IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Permitir editar IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Permite cambiar el valor de IPN mientras se edita una parte" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Copiar parte de datos BOM" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Copiar datos BOM por defecto al duplicar una parte" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Copiar parámetros de parte" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Copiar datos de parámetro por defecto al duplicar una parte" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Copiar parte de datos de prueba" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Copiar datos de parámetro por defecto al duplicar una parte" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Copiar plantillas de parámetros de categoría" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Copiar plantillas de parámetros de categoría al crear una parte" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Plantilla" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Las partes son plantillas por defecto" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Las partes pueden ser ensambladas desde otros componentes por defecto" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Componente" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Las partes pueden ser usadas como subcomponentes por defecto" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Comprable" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Las partes son comprables por defecto" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Vendible" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Las partes se pueden vender por defecto" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Las partes son rastreables por defecto" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtual" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Las partes son virtuales por defecto" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Mostrar importación en vistas" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Mostrar el asistente de importación en algunas vistas de partes" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Mostrar partes relacionadas" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Mostrar partes relacionadas para una parte" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Datos iniciales de existencias" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Permitir la creación del stock inicial al añadir una nueva parte" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Datos iniciales del proveedor" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Permitir la creación de datos iniciales del proveedor al agregar una nueva parte" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Formato de visualización de Nombre de Parte" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formato para mostrar el nombre de la parte" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Icono por defecto de la categoría de parte" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Icono por defecto de la categoría de parte (vacío significa que no hay icono)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Forzar unidades de parámetro" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Si se proporcionan unidades, los valores de parámetro deben coincidir con las unidades especificadas" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Mínimo de lugares decimales en el precio" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Número mínimo de decimales a mostrar al procesar los datos de precios" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Máximo de lugares decimales en el precio" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Número máximo de decimales a mostrar al procesar los datos de precios" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Usar precios de proveedor" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Incluir descuentos de precios del proveedor en los cálculos generales de precios" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Anulación del historial de compra" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "El precio histórico de compra anula los descuentos de precios del proveedor" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Usar precio del artículo de almacén" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Usar los precios de los datos de inventario introducidos manualmente para los cálculos de precios" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Edad del precio del artículo de almacén" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Excluir artículos de almacén anteriores a este número de días de los cálculos de precios" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Usar precios variantes" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Incluir variantes de precios en los cálculos generales de precios" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Solo variantes activas" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Usar solo partes de variantes activas para calcular los precios de variantes" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervalo de reconstrucción de precios" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Número de días antes de que el precio de la parte se actualice automáticamente" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Precios internos" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Habilitar precios internos para partes" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Anulación del precio interno" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Si está disponible, los precios internos anulan los cálculos del rango de precios" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Habilitar impresión de etiquetas" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Habilitar impresión de etiquetas desde la interfaz web" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "PPP de la imagen de etiqueta" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Resolución DPI al generar archivos de imagen que suministrar para etiquetar complementos de impresión" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Habilitar informes" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Habilitar generación de informes" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Modo de depuración" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Generar informes en modo de depuración (salida HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Registrar errores de reportes" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Registrar errores ocurridos al generar reportes" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Tamaño de página" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Tamaño de página predeterminado para informes PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Seriales únicos globalmente" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Los números de serie para los artículos de inventario deben ser únicos globalmente" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Autollenar números de serie" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Autorellenar números de serie en formularios" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Eliminar existencias agotadas" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Determina el comportamiento por defecto al agotarse un artículo del inventario" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Plantilla de código de lote" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Plantilla para generar códigos de lote por defecto para artículos de almacén" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Expiración de stock" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Habilitar la funcionalidad de expiración de stock" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Vender existencias caducadas" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Permitir venta de existencias caducadas" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Tiempo histórico de Stock" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Número de días de artículos de stock se consideran obsoletos antes de caducar" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Crear Stock Caducado" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Permitir crear con stock caducado" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Control de Stock" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Habilitar control de propiedad sobre ubicaciones de stock y artículos" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Icono por defecto de ubicación de almacén" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Icono por defecto de ubicación de almacén (vacío significa que no hay icono)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Mostrar Articulos de Stock Instalados" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Mostrar los artículos de stock instalados en las tablas de stock" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Revisar BOM al instalar artículos" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Los elementos de stock instalados deben existir en la BOM para la parte padre" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Permitir transferencia Sin Existencias" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Permitir que artículos del inventario sin existencias puedan ser transferidos entre ubicaciones de inventario" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Patrón de Referencia de Ordenes de Armado" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la Orden de Ensamblado" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Requerir Dueño Responsable" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Se debe asignar un dueño responsable a cada orden" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Requerir Parte Activa" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Impedir la creación de órdenes de fabricación para partes inactivas" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Requerir Parte Bloqueada" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Impedir la creación de órdenes de fabricación para partes bloqueadas" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Impedir la creación de órdenes de fabricación a menos que se haya validado la lista de materiales" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Prevenir la finalización de la orden de construcción hasta que todas las órdenes hijas estén cerradas" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Bloquear hasta que los Tests pasen" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Evitar que las construcciones sean completadas hasta que todas las pruebas requeridas pasen" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Habilitar órdenes de devolución" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Habilitar la funcionalidad de orden de devolución en la interfaz de usuario" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Patrón de referencia de orden de devolución" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Patrón requerido para generar el campo de referencia de devolución de la orden" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Editar ordenes de devolución completadas" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Permitir la edición de ordenes de devolución después de que hayan sido completados" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Patrón de Referencia de Ordenes de Venta" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la orden de venta" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Envío Predeterminado de Ordenes de Venta" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Habilitar la creación de envío predeterminado con ordenes de entrega" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Editar Ordenes de Venta Completados" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Permitir la edición de ordenes de venta después de que hayan sido enviados o completados" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Marcar pedidos enviados como completados" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Los pedidos marcados como enviados se completarán automáticamente, evitando el estado de \"envío\"" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Patrón de Referencia de Orden de Compra" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Patrón requerido para generar el campo de referencia de la Orden de Compra" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Editar Ordenes de Compra Completados" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Permitir la edición de órdenes de venta después de que hayan sido enviados o completados" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Autocompletar Ordenes de compra" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Marcar automáticamente las órdenes de compra como completas cuando se reciben todos los artículos de línea" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Habilitar función de contraseña olvidada" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Activar la función olvido de contraseña en las páginas de inicio de sesión" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Habilitar registro" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Activar auto-registro para usuarios en las páginas de inicio de sesión" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Habilitar SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Habilitar SSO en las páginas de inicio de sesión" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Habilitar registro SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Activar autoregistro a través de SSO para usuarios en las páginas de inicio de sesión" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "Habilitar sincronización de grupo SSO" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Habilitar la sincronización de grupos de Inventree con grupos proporcionados por el IdP" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "Clave de grupo SSO" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "El nombre del atributo reclamado por el grupo proporcionado por el IdP" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "Mapa del grupo SSO" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Un mapeo de grupos SSO a grupos de Inventree locales. Si el grupo local no existe, se creará." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "Eliminar grupos fuera de SSO" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email requerido" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Requiere usuario para suministrar correo al registrarse" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Auto-rellenar usuarios SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Rellenar automáticamente los datos de usuario de la cuenta SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Correo dos veces" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Al registrarse pregunte dos veces a los usuarios por su correo" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Contraseña dos veces" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Al registrarse, preguntar dos veces a los usuarios por su contraseña" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Dominios permitidos" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Restringir el registro a ciertos dominios (separados por comas, comenzando por @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grupo al registrarse" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Grupo al que se asignan nuevos usuarios al registrarse. Si la sincronización de grupo SSO está activada, este grupo sólo se establece si no se puede asignar ningún grupo desde el IdP." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Forzar MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Los usuarios deben utilizar seguridad multifactor." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Comprobar complementos al iniciar" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Comprobar que todos los complementos están instalados en el arranque - habilitar en entornos de contenedores" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Revisar actualizaciones del plugin" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Habilitar comprobaciones periódicas para actualizaciones de plugins instalados" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Habilitar integración de URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Habilitar plugins para añadir rutas de URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Habilitar integración de navegación" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Habilitar plugins para integrar en la navegación" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Habilitar integración de la aplicación" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Habilitar plugins para añadir aplicaciones" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Habilitar integración de programación" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Habilitar plugins para ejecutar tareas programadas" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Habilitar integración de eventos" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Habilitar plugins para responder a eventos internos" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Habilitar integración de interfaz" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Habilitar complementos para integrar en la interfaz de usuario" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funcionalidad de inventario" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Habilite la funcionalidad de inventario para registrar los niveles de existencias y calcular el valor de las existencias" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Excluir Ubicaciones Externas" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Excluir artículos en existencia en ubicaciones externas de los cálculos de inventario" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Periodo de inventario automático" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Número de días entre el registro automático del inventario (establecer en cero para desactivarlo)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Intervalo de borrado de informe" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Los informes de inventario se eliminarán después de un número de días especificado" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Mostrar nombres completos de los usuarios" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Mostrar nombres completos de usuarios en lugar de nombres de usuario" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Habilitar datos de estación de prueba" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Habilitar la recolección de datos de estaciones de prueba para resultados de prueba" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "Crear plantilla al subir" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Crear una nueva plantilla de prueba al subir datos de prueba que no coincidan con una plantilla existente" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Fabricante" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Empresa" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Enlace a información de dirección (externa)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Parte del fabricante" @@ -3744,8 +3708,8 @@ msgstr "Seleccionar parte" msgid "Select manufacturer" msgstr "Seleccionar fabricante" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Nombre del parámetro" msgid "Parameter value" msgstr "Valor del parámetro" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Unidades" @@ -3793,11 +3757,11 @@ msgstr "Las unidades de paquete deben ser mayor que cero" msgid "Linked manufacturer part must reference the same base part" msgstr "La parte vinculada del fabricante debe hacer referencia a la misma parte base" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Proveedor" @@ -3805,7 +3769,7 @@ msgstr "Proveedor" msgid "Select supplier" msgstr "Seleccionar proveedor" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Unidad de mantenimiento de stock de proveedores" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Descripción de la parte del proveedor" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Descripción de la parte del proveedor" msgid "Note" msgstr "Nota" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "costo base" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Paquetes" @@ -3861,7 +3825,7 @@ msgstr "Cantidad de paquete" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Cantidad total suministrada en un solo paquete. Dejar vacío para artículos individuales." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "múltiple" @@ -3885,15 +3849,15 @@ msgstr "Fecha de última actualización de los datos de disponibilidad" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Moneda predeterminada utilizada para este proveedor" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Nombre de la empresa" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "En Stock" @@ -3905,7 +3869,7 @@ msgstr "Clave personalizada de estado" msgid "Additional status information for this item" msgstr "Información adicional de estado para este artículo" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Clave" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "Formato de exportación inválido" +#: importer/models.py:64 +msgid "Data File" +msgstr "Archivo de datos" + #: importer/models.py:65 msgid "Data file to import" msgstr "Archivo de datos a importar" @@ -4009,7 +3977,7 @@ msgstr "Datos de la fila original" msgid "Errors" msgstr "Errores" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Válido" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "La cantidad debe ser un número positivo" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" @@ -4835,11 +4803,11 @@ msgstr "Combinar artículos" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Número de parte interna" @@ -4879,7 +4847,7 @@ msgstr "Seleccione la ubicación de destino para los artículos recibidos" msgid "Enter batch code for incoming stock items" msgstr "Introduzca el código de lote para los artículos de almacén entrantes" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Fecha de Expiración" @@ -4979,7 +4947,7 @@ msgstr "Los siguientes números de serie no están disponibles" msgid "Return order line item" msgstr "Partida de orden de devolución" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "Favoritos" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Profundidad" @@ -5069,7 +5037,7 @@ msgstr "Profundidad" msgid "Filter by category depth" msgstr "Filtrar por profundidad de categoría" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Nivel superior" @@ -5077,7 +5045,7 @@ msgstr "Nivel superior" msgid "Filter by top-level categories" msgstr "Filtrar por categorías de nivel superior" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "En cascada" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "Tiene resultados" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Orden de compra entrante" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Orden de venta saliente" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Validación de Lista de Materiales" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Esta opción debe ser seleccionada" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Categoría de parte" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Categorías de parte" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Ubicación Predeterminada" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Ubicación predeterminada para partes de esta categoría" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Estructural" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Las partes no pueden asignarse directamente a una categoría estructural, pero pueden asignarse a categorías hijas." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Palabras clave predeterminadas" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Palabras clave por defecto para partes en esta categoría" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Icono" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Icono (opcional)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "¡No puedes hacer que esta categoría de partes sea estructural porque algunas partes ya están asignadas!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Partes" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Opción no válida para la parte principal" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Ya existe un artículo de almacén con este número de serie" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN duplicado no permitido en la configuración de partes" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "La revisión de parte duplicada ya existe." -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Parte con este nombre, IPN y revisión ya existe." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "¡No se pueden asignar partes a las categorías de partes estructurales!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nombre de la parte" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Es plantilla" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "¿Es esta parte una parte de la plantilla?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Descripción de parte (opcional)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Palabras claves" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Categoría de parte" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Revisión de parte o número de versión" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisión" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "Variante de" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "¿Dónde se almacena este artículo normalmente?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Proveedor por defecto" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Parte de proveedor predeterminada" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Expiración por defecto" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Stock mínimo" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Nivel mínimo de stock permitido" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Unidades de medida para esta parte" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "¿Se puede construir esta parte a partir de otras partes?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "¿Se puede utilizar esta parte para construir otras partes?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "¿Esta parte tiene seguimiento de objetos únicos?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "¿Se puede comprar esta parte a proveedores externos?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "¿Se puede vender esta parte a los clientes?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "¿Está activa esta parte?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "Las partes bloqueadas no pueden ser editadas" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Suma de verificación de BOM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Suma de verificación de BOM almacenada" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "BOM comprobado por" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Fecha BOM comprobada" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Creación de Usuario" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Dueño responsable de esta parte" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Último inventario" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Vender múltiples" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Moneda utilizada para almacenar en caché los cálculos de precios" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Costo mínimo de BOM" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Costo mínimo de partes de componentes" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Costo máximo de BOM" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Costo máximo de partes de componentes" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Costo mínimo de compra" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Costo histórico mínimo de compra" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Costo máximo de compra" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Costo histórico máximo de compra" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Precio interno mínimo" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Costo mínimo basado en precios reducidos internos" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Precio interno máximo" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Costo máximo basado en precios reducidos internos" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Precio mínimo de proveedor" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Precio mínimo de la parte de proveedores externos" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Precio máximo de proveedor" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Precio máximo de la parte de proveedores externos" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Costo mínimo de variante" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Costo mínimo calculado de las partes variantes" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Costo máximo de variante" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Costo máximo calculado de las partes variantes" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Costo mínimo" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Anular el costo mínimo" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Costo máximo" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Reemplazar coste máximo" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Costo mínimo general calculado" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Precio de venta mínimo" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Precio de venta mínimo basado en precios reducidos" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Precio de venta máximo" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Precio de venta máximo basado en precios reducidos" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Costo de venta mínimo" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Precio de venta mínimo histórico" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Costo de Venta Máximo" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Precio de venta máximo histórico" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Número de artículos" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Fecha" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Notas adicionales" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Costo de Stock Mínimo" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Costo mínimo estimado del stock disponible" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Informe" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Número de partes" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Las plantillas de prueba solo pueden ser creadas para partes de prueba" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nombre de prueba" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Introduzca un nombre para la prueba" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Descripción de prueba" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Introduce la descripción para esta prueba" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Requerido" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "¿Es necesario pasar esta prueba?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Requiere valor" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Adjunto obligatorio" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Opciones" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "El nombre de parámetro en la plantilla tiene que ser único" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Nombre de Parámetro" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Casilla de verificación" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "¿Es este parámetro una casilla de verificación?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opciones válidas para este parámetro (separados por comas)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "Lista de selección para este parámetro" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Opción inválida para el valor del parámetro" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Parte principal" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Plantilla de parámetro" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Valor del parámetro" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Valor predeterminado" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Valor de parámetro por defecto" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID de parte o nombre de parte" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID de Parte" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Valor de ID de parte única" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN de la parte" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Valor IPN de parte" - -#: part/models.py:4130 -msgid "Level" -msgstr "Nivel" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Nivel de BOM" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Seleccionar parte principal" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Sub parte" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Seleccionar parte a utilizar en BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Cantidad del artículo en BOM" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Este artículo BOM es opcional" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este artículo de BOM es consumible (no está rastreado en órdenes de construcción)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Exceso" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Referencia de artículo de BOM" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Notas del artículo de BOM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Suma de verificación" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Suma de verificación de línea de BOM" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Validado" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Este artículo de BOM ha sido validado" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este artículo BOM es heredado por BOMs para partes variantes" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "La cantidad debe ser un valor entero para las partes rastreables" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Debe especificar la subparte" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Ítem de BOM sustituto" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sustituta no puede ser la misma que la parte principal" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Artículo BOM superior" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Sustituir parte" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Seleccionar parte relacionada" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "Nota para esta relación" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Categoría principal de parte" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Subcategorías" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Moneda de compra de ítem de stock" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Cantidad especulativa" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "ID del modelo" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "No hay partes seleccionadas" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Seleccionar categoría" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Parte original" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Seleccione la parte original a duplicar" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Copiar Imagen" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Copiar imagen desde la parte original" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Copiar BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Copiar la factura de materiales de la parte original" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Copiar Parámetros" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Copiar datos del parámetro de la parte original" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Copiar Notas" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Cantidad Inicial de Stock" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Seleccione proveedor (o déjelo en blanco para saltar)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Seleccionar fabricante (o dejar en blanco para saltar)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Número de parte del fabricante" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "La empresa seleccionada no es un proveedor válido" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "La empresa seleccionada no es un fabricante válido" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Nombre de categoría" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "En construcción" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Elementos de stock" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Proveedores" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Inventario Total" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Duplicar Parte" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Stock Inicial" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Crear Parte con cantidad inicial de stock" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Información del proveedor" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Añadir información inicial del proveedor para esta parte" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Copiar Parámetros de Categoría" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Imagen Existente" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "El archivo de imagen no existe" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Generar informe" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Actualizar partes" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Falló la comprobación en segundo plano del worker" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Precio mínimo" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Anular el valor calculado para precio mínimo" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Precio mínimo de moneda" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Precio máximo" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Precio máximo de moneda" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Actualizar" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "El precio mínimo no debe ser mayor que el precio máximo" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "El precio máximo no debe ser inferior al precio mínimo" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Puede construir" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Seleccionar parte de la que copiar BOM" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Eliminar Datos Existentes" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Eliminar artículos BOM existentes antes de copiar" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Incluye Heredado" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Incluye artículos BOM que son heredados de partes con plantillas" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Omitir filas no válidas" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Activar esta opción para omitir filas inválidas" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Copiar partes sustitutas" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Limpiar BOM Existente" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Varios resultados encontrados" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "No se encontraron partes coincidentes" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "La parte no está designada como componente" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Cantidad no proporcionada" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Cantidad no válida" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Se requiere al menos un artículo BOM" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID de Parte" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "No se encontró ninguna coincidencia para los datos del código de barra msgid "Match found for barcode data" msgstr "Coincidencia encontrada para datos de códigos de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "No se pudo recibir partida" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "Proveedor para recibir artículos de" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "Partida de pedido de compra para recibir artículos" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "Asignar automáticamente artículos de stock a la orden de compra" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Proporciona soporte nativo para códigos de barras" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Notificaciones de InvenTree" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Métodos de notificaciones salientes integrados" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Habilitar notificaciones por correo electrónico" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Permitir el envío de correos electrónicos para notificaciones de eventos" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Activar notificaciones de slack" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Permitir el envío de mensajes por canal de slack para notificaciones de eventos" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "URL de webhook entrante de Slack" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL que se utiliza para enviar mensajes a un canal de slack" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Abrir enlace" @@ -6936,7 +6844,7 @@ msgstr "Complemento integrado" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Complemento" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Altura [mm]" msgid "Label height, specified in mm" msgstr "Altura de la etiqueta, especificada en mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Progreso" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Fragmento" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Archivo fragmento de informe" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Descripción de archivo de fragmento" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Activo" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Reportar archivo de activos" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Descripción del archivo de activos" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Ubicación principal" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filtrar por ubicación principal" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "Nombre de pieza (insensible a mayúsculas y minúsculas)" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "El nombre de la pieza contiene (insensible a mayúsculas y minúsculas)" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "Nombre de la pieza (expresión regular)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "IPN de Pieza (insensible a mayúsculas y minúsculas)" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "IPN de pieza contiene (insensible a mayúsculas y minúsculas)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "IPN de Pieza (expresión regular)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "Existencias mínimas" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "Existencias máximas" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Código de estado" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Ubicación externa" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "Consumido por orden de construcción" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "Instalado en otro artículo de existencias" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Árbol de piezas" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "Actualizado antes de" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "Actualizado después de" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "Inventario antes de" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "Inventario después de" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Desactualizado" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Cantidad requerida" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Debe suministrarse una parte válida" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Ubicación de Stock" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Ubicaciones de Stock" @@ -7718,7 +7626,7 @@ msgstr "Seleccione una parte del proveedor correspondiente para este artículo d msgid "Where is this stock item located?" msgstr "¿Dónde se encuentra este artículo de stock?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Empaquetar este artículo de stock se almacena en" @@ -7734,7 +7642,7 @@ msgstr "¿Está este artículo instalado en otro artículo?" msgid "Serial number for this item" msgstr "Número de serie para este artículo" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Código de lote para este artículo de stock" @@ -7790,136 +7698,136 @@ msgstr "Precio de compra único en el momento de la compra" msgid "Converted to part" msgstr "Convertido a parte" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "La parte no está establecida como rastreable" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Cantidad debe ser un entero" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "Los números de serie deben ser proporcionados como una lista" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "La cantidad no coincide con los números de serie" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Artículo de stock ha sido asignado a un pedido de venta" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Artículo de stock está instalado en otro artículo" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Artículo de stock contiene otros artículos" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Artículo de stock ha sido asignado a un cliente" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "El artículo de stock está en producción" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Stock serializado no puede ser combinado" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Artículos de Stock Duplicados" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Los artículos de stock deben referirse a la misma parte" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Los artículos de stock deben referirse a la misma parte del proveedor" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Los códigos de estado del stock deben coincidir" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stock no se puede mover porque no está en stock" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Notas de entrada" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Debe proporcionarse un valor para esta prueba" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "El archivo adjunto debe ser subido para esta prueba" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Resultado de la prueba" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Valor de salida de prueba" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Adjunto de resultados de prueba" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Notas de prueba" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Finalizó" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Número de pieza del proveedor" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Expirado" @@ -8024,7 +7932,7 @@ msgstr "La cantidad no debe exceder la cantidad disponible de stock ({q})" msgid "Enter serial numbers for new items" msgstr "Introduzca números de serie para nuevos artículos" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Ubicación de stock de destino" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Sub-ubicación" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "La parte debe ser vendible" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "El artículo está asignado a una orden de venta" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "El artículo está asignado a una orden de creación" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Cliente para asignar artículos de stock" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "La empresa seleccionada no es un cliente" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Notas de asignación de stock" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Debe proporcionarse una lista de artículos de stock" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Notas de fusión de stock" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Permitir proveedores no coincidentes" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Permitir fusionar artículos de stock con diferentes partes de proveedor" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Permitir estado no coincidente" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Permitir fusionar artículos de stock con diferentes códigos de estado" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Debe proporcionar al menos dos artículos de stock" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Sin cambios" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Valor de clave primaria de Stock" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "No hay existencias del artículo" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Notas de transacción de stock" @@ -8305,11 +8213,11 @@ msgstr "Enviar al cliente" msgid "Returned from customer" msgstr "Devolución del cliente" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Permiso Denegado" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "No tiene permisos para ver esta página." @@ -8317,47 +8225,39 @@ msgstr "No tiene permisos para ver esta página." msgid "Authentication Failure" msgstr "Falla de autenticación" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Has cerrado sesión en InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Iniciar sesión" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Página No Encontrada" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "La página solicitada no existe" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Error Interno Del Servidor" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Consulte el registro de errores en la interfaz de administración para más detalles" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "El Sitio está en Mantenimiento" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "El sitio está actualmente en mantenimiento y debería estar listo pronto!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo de InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Reinicio del Servidor Requerido" @@ -8423,31 +8323,31 @@ msgstr "Haga clic en el siguiente enlace para ver esta parte" msgid "Minimum Quantity" msgstr "Cantidad Mínima" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Usuarios" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Seleccione qué usuarios están asignados a este grupo" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Información personal" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Permisos" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Fechas importantes" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Token revocado" @@ -8455,55 +8355,55 @@ msgstr "Token revocado" msgid "Token has expired" msgstr "Token expirado" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "Token del API" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "Tokens del API" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Nombre del token" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Nombre personalizado del token" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Fecha de expiración del token" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Última conexión" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Última vez que se usó el token" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Revocado" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Verificación de Inventario" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Ordenes de compra" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Órdenes de venta" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Ordenes de devolución" diff --git a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po index 421e4df553..5a60227e84 100644 --- a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Estonian\n" "Language: et_EE\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Teil ei ole selle lehe vaatamiseks luba" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Meili (uuesti)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "E-posti aadressi kinnitus" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registreerimine on ajutiselt väljalülitatud." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "Pane kuupäev" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Märkmed" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Hiina (lihtsustatud)" msgid "Chinese (Traditional)" msgstr "Hiina (traditsiooniline)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-post" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nimi" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Kirjeldus" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Kirjeldus (valikuline)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Tee" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serveri viga" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Kasutajanimi" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Eesnimi" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Perekonnanimi" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Fail on liiga suur" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Osa" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Valikuline" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "Jälgitud" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Saadaval" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "Koostamise olek" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Loomise kuupäev" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Asukoht" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Tühista kõik laoseisu eraldised mahakantud väljundite jaoks" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Staatus" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Valikained" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Jälgitav" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Saadaval laos" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Katkestatud" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Valmis" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Silt" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Grupp puudub" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Taaskäivitamine on vajalik" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Ettevõtte nimi" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automaatne varundus" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Vöötkoodi tugi" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Luba liidese integreerimine" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Luba pluginatel integreeruda kasutajaliidesesse" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Loo uus testimall testandmete üleslaadimisel, mis ei vasta olemasolevale mallile" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "Järgmised seerianumbrid ei ole saadaval" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Testimalle saab luua ainult testitavate osade jaoks" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Osa ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Osa ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Testitulemused" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Tarnija osa number" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree logo" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Kasutajad" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Isiklik info" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Õigused" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Olulised kuupäevad" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API tunnus" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API tunnused" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Lunnuse nimi" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Kohandatud tunnuse nimi" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Tunnuse aegumise kuupäev" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Viimati nähtud" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Tühistatud" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Admin" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po index 6c60f3b9e9..6bc89f3664 100644 --- a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Address e API peida nashod" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "کاربر سطح دسترسی نمایش این مدل را ندارد" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "ایمیل (دوباره وارد کنید)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "تایید آدرس ایمیل" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "هر بار باید همان ایمیل را تایپ کنید." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "آدرس ایمیل اصلی ارائه شده معتبر نیست." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "دامنه ایمیل ارائه شده تایید نشده است." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "تاریخ را وارد کنید" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "یادداشت" @@ -120,42 +112,42 @@ msgstr "مقدار '{name}' در قالب الگو ظاهر قرار نمی گی msgid "Provided value does not match required pattern: " msgstr "مقدار ارائه شده با الگوی مورد نیاز مطابقت ندارد: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "فایل‌های داده" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "فایل را برای بارگذاری انتخاب کنید" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "حجم فایل خیلی بزرگ است" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "هیچ ستونی در فایل یافت نشد" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "هیچ ردیف داده ای در فایل یافت نشد" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "هیچ ردیف داده ای ارائه نشده است" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "هیچ ستون داده ای ارائه نشده است" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "ستون مورد نیاز وجود ندارد: \"{name}\"" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "ستون تکراری: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "آدرس فایل تصویری از راه دور" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "مرجع سفارش فروش" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "منبع محل" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "فایل‌های داده" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po index 1b80f68748..b02602771f 100644 --- a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Language: fi_FI\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API-rajapintaa ei löydy" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Käyttäjän oikeudet eivät riitä kohteen tarkastelemiseen" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Sähköposti (uudelleen)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Sähköpostiosoitteen vahvistus" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Sinun täytyy kirjoittaa sama sähköposti joka kerta." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Annettu ensisijainen sähköpostiosoite ei kelpaa." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Annetun sähköpostiosoitteen verkkotunnusta ei hyväksytä." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Annettu määrä on virheellinen" @@ -100,14 +92,14 @@ msgstr "Anna päivämäärä" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Merkinnät" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Tyhjä sarjanumero" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplikaatti sarjanumero" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Sarjanumeroita ei löytynyt" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Sähköposti" @@ -368,247 +360,205 @@ msgstr "Liitännäisen metadata" msgid "JSON metadata field, for use by external plugins" msgstr "JSON metadatakenttä, ulkoisten liitännäisten käyttöön" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Virheellisesti muotoiltu malli" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Viitekenttä ei voi olla tyhjä" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Viitenumero on liian suuri" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Virheellinen valinta" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nimi" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Kuvaus" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Kuvaus (valinnainen)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Polku" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Viivakoodin Tiedot" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Palvelinvirhe" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Täytyy olla kelvollinen luku" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuutta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Valitse valuutta käytettävissä olevista vaihtoehdoista" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Käyttäjätunnus" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Etunimi" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Sukunimi" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktiivinen" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Virheellinen arvo" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datatiedosto" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Valitse lähetettävä datatiedosto" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Tiedosto on liian suuri" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Datarivejä ei annettu" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Datasarakkeita ei annettu" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Vaadittu sarake puuttuu: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplikaatti sarake: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "Kuvatiedoston URL" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Kuvien lataaminen ei ole käytössä" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Osa" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategoria" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Saatavilla" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "Ulkoinen linkki" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Linkki ulkoiseen URLiin" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Varastotuote" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Sarjanumerot" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Sijainti" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Tila" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Ei sallittu" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Seurattavissa" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Peruttu" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Valmis" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Käyttäjä" @@ -1594,7 +1543,7 @@ msgstr "Käyttäjä" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Hinta" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Otsikko" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Linkki" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Kuva" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Liite" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Arvo" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Ei ryhmää" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Uudelleenkäynnistys vaaditaan" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Yrityksen nimi" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Yrityksen sisäinen nimi" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Oletusvaluutta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "päivää" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automaattinen varmuuskopionti" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Ota käyttöön tietokannan ja mediatiedostojen automaattinen varmuuskopiointi" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Automaattisen varmuuskopioinnin aikaväli" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Viivakoodituki" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponentti" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Ostettavissa" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Sisäiset hinnat" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Sisäisen hinnan ohitus" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Sivun koko" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Täytä sarjanumerot automaattisesti" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Salli salasananpalautus" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Salli rekisteröinti" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Salli SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Salli SSO kirjautumissivuilla" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Salli SSO rekisteröinti" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Sähköposti vaaditaan" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Sähköpostiosoite kahdesti" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Salasana kahdesti" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Sallitut verkkotunnukset" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Pakota MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Valmistaja" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Yritys" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "Valitse valmistaja" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Toimittaja" @@ -3805,7 +3769,7 @@ msgstr "Toimittaja" msgid "Select supplier" msgstr "Valitse toimittaja" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Toimittajan varastonimike" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "Muistiinpano" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Avain" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datatiedosto" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Asiakas" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Oletus avainsanat" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Kuvake" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Kuvake (valinnainen)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Avainsanat" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Päivämäärä" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Muut merkinnät" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Raportti" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Käytössä" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Valmistajan osanumero" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Luo raportti" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Avaa linkki" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Korkeus [mm]" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Sivua ei löydy" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Pyydettyä sivua ei ole olemassa" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Palvelimen uudelleenkäynnistys vaaditaan" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Käyttäjät" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Valitse mitkä käyttäjät on määritetty tähän ryhmään" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Henkilökohtaiset tiedot" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Oikeudet" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po index 909405f064..22f52626a0 100644 --- a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Point de terminaison de l'API introuvable" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Filtres fournis invalides" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "L'utilisateur n'a pas la permission de voir ce modèle" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "Email de vérification envoyé." - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (encore)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Confirmation de l'adresse email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Vous devez taper le même e-mail à chaque fois." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "L'enregistrement MFA est désactivé." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "L'adresse e-mail principale fournie n'est pas valide." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Le domaine e-mail fourni n'est pas approuvé." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "L'enregistrement est désactivé." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Impossible de convertir {original} en {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" @@ -100,14 +92,14 @@ msgstr "Entrer la date" msgid "Invalid decimal value" msgstr "Valeur décimale invalide" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notes" @@ -120,42 +112,42 @@ msgstr "La valeur '{name}' n'apparaît pas dans le format du modèle" msgid "Provided value does not match required pattern: " msgstr "La valeur fournie ne correspond pas au modèle requis : " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Chaîne de numéro de série vide" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Numéro de série en doublon" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Groupe invalide : {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "La plage de groupe {group} dépasse la quantité autorisée ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Aucun numéro de série trouvé" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Le nombre de numéros de série uniques ({len(serials)}) doit correspondre à la quantité ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Retirer les balises HTML de cette valeur" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Chinois (Simplifié)" msgid "Chinese (Traditional)" msgstr "Chinois (Traditionnel)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Se connecter à l'application" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-mail" @@ -368,247 +360,205 @@ msgstr "Métadonnées de l'Extension" msgid "JSON metadata field, for use by external plugins" msgstr "Champs metadata JSON, pour plugins tiers" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Modèle mal formaté" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Clé de format inconnu spécifiée" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Clé de format requise manquante" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Le champ de référence ne peut pas être vide" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "La référence doit correspondre au modèle requis" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Le numéro de référence est trop grand" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Les noms dupliqués ne peuvent pas exister sous le même parent" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Choix invalide" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nom" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Description" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Description (facultative)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Chemin d'accès" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Notes Markdown (option)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Données du code-barres" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Données de code-barres tierces" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash du code-barre" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hachage unique des données du code-barres" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Code-barres existant trouvé" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Échec de la tâche" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Erreur serveur" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Une erreur a été loguée par le serveur." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Doit être un nombre valide" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Devise" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Sélectionnez la devise à partir des options disponibles" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nom d'utilisateur" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Prénom" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Prénom de l'utilisateur" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Nom" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Nom de famille de l'utilisateur" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Adresse e-mail de l'utilisateur" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Staff" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Cet utilisateur a-t-il les permissions du staff" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Super-utilisateur" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Cet utilisateur est-il un super-utilisateur" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Actif" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Ce compte d'utilisateur est-il actif" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Vous n'avez pas la permission de modifier ce rôle utilisateur." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Seuls les super-utilisateurs peuvent créer de nouveaux utilisateurs" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Votre compte a été créé." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Veuillez utiliser la fonction de réinitialisation du mot de passe pour vous connecter" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Bienvenue dans InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Valeur non valide" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Fichier de données" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Sélectionnez le fichier de données à envoyer" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Fichier trop volumineux" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Pas de colonnes trouvées dans le fichier" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Par de lignes de données trouvées dans le fichier" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Pas de lignes de données fournies" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Pas de colonne de données fournie" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Colonne requise manquante : {name}" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Colonne duliquée : '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Images distantes" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL du fichier image distant" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Le téléchargement des images depuis une URL distante n'est pas activé" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Fabrication parente" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Inclure les variantes" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Inclure les variantes" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Inclure les variantes" msgid "Part" msgstr "Pièce" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Catégorie" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "La construction doit être annulée avant de pouvoir être supprimée" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Consommable" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Facultatif" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Assemblage" @@ -756,7 +705,7 @@ msgstr "Assemblage" msgid "Tracked" msgstr "Suivi" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testable" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Allouée" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Disponible" msgid "Build Order" msgstr "Ordre de Fabrication" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Ordres de Fabrication" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Bon de commande de référence" msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Emplacement d'origine" @@ -887,17 +836,17 @@ msgstr "État de la construction" msgid "Build status code" msgstr "Code de statut de construction" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Code de lot" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Date de création" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Utilisateur ayant émis cette commande de construction" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsable" @@ -947,7 +896,7 @@ msgstr "Utilisateur ou groupe responsable de cet ordre de construction" msgid "External Link" msgstr "Lien Externe" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Lien vers une url externe" @@ -982,7 +931,7 @@ msgstr "La commande de construction {build} a été effectuée" msgid "A build order has been completed" msgstr "Une commande de construction a été effectuée" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Les numéros de série doivent être fournis pour les pièces traçables" @@ -998,18 +947,18 @@ msgstr "L'ordre de production a déjà été réalisé" msgid "Build output does not match Build Order" msgstr "L'ordre de production de correspond pas à l'ordre de commande" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantité ne peut pas être supérieure à la quantité de sortie" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La sortie de compilation {serial} n'a pas réussi tous les tests requis" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "Création de l'objet" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "La quantité doit être de 1 pour stock sérialisé" msgid "Selected stock item does not match BOM line" msgstr "L'article de stock sélectionné ne correspond pas à la ligne BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Article en stock" @@ -1094,366 +1043,366 @@ msgstr "Installer dans" msgid "Destination stock item" msgstr "Stock de destination de l'article" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Niveau de construction" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nom de l'article" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Sortie d'assemblage" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "L'ordre de production ne correspond pas à l'ordre parent" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "La pièce en sortie ne correspond pas à la pièce de l'ordre de construction" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Cet ordre de production a déjà été produit" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Cet ordre de production n'est pas complètement attribué" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Quantité entière requise pour les pièces à suivre" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Numéros de série" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Entrer les numéros de séries pour la fabrication" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Emplacement" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Emplacement de stock pour la sortie de la fabrication" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Allouer automatiquement les numéros de série" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Affecter automatiquement les éléments requis avec les numéros de série correspondants" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Les numéros de série suivants existent déjà, ou sont invalides" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Une liste d'ordre de production doit être fourni" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Emplacement du stock pour les sorties épuisées" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Ignorer les allocations" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Abandonner les allocations de stock pour les sorties abandonnées" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Motif de l'élimination des produits de construction(s)" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Emplacement des ordres de production achevés" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "État" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Accepter l'allocation incomplète" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Compléter les sorties si le stock n'a pas été entièrement alloué" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Consommation du stock alloué" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Consommer tout stock qui a déjà été alloué à cette construction" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Retirer les sorties incomplètes" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Supprimer toutes les sorties de construction qui n'ont pas été complétées" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Non permis" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Accepter comme consommé par cet ordre de construction" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Désaffecter avant de terminer cette commande de fabrication" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Stock suralloué" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Comment voulez-vous gérer les articles en stock supplémentaires assignés à l'ordre de construction" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Certains articles de stock ont été suralloués" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Accepter les non-alloués" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter les articles de stock qui n'ont pas été complètement alloués à cette ordre de production" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Le stock requis n'a pas encore été totalement alloué" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Accepter les incomplèts" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepter que tous les ordres de production n'aient pas encore été achevés" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "La quantité nécessaire n'a pas encore été complétée" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Chaîne d'assemblage" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Sortie d'assemblage" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "La sortie de la construction doit pointer vers la même construction" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Élément de la ligne de construction" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "L'article doit être en stock" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantité disponible ({q}) dépassée" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "La sortie de construction doit être spécifiée pour l'allocation des pièces suivies" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La sortie de la construction ne peut pas être spécifiée pour l'allocation des pièces non suivies" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Les articles d'allocation doivent être fournis" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Emplacement de stock où les pièces doivent être fournies (laissez vide pour les prendre à partir de n'importe quel emplacement)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Emplacements exclus" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Exclure les articles de stock de cet emplacement sélectionné" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Stock interchangeable" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Les articles de stock à plusieurs emplacements peuvent être utilisés de manière interchangeable" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Stock de substitution" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Autoriser l'allocation de pièces de remplacement" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Objets Optionnels" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Affecter des éléments de nomenclature facultatifs à l'ordre de fabrication" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Pièce fournisseur" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Quantité allouée" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Traçable" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Reçu de quelqu'un" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Autoriser les variantes" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Article du BOM" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Stock alloué" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "En Commande" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "En Production" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Stock externe" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Stock disponible" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Stock de substitution disponible" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Stock de variantes disponibles" @@ -1479,7 +1428,7 @@ msgstr "Annulé" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Terminé" @@ -1583,10 +1532,10 @@ msgstr "La chaîne de caractères constituant la clé doit être unique" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Utilisateur" @@ -1594,7 +1543,7 @@ msgstr "Utilisateur" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Prix" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "Ce webhook (lien de rappel HTTP) est-il actif" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Jeton" @@ -1683,14 +1632,14 @@ msgstr "Le travail sur ce message est-il terminé ?" msgid "Id" msgstr "Id" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Titre" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Lien" @@ -1715,11 +1664,10 @@ msgstr "Lu" msgid "Was this news item read?" msgstr "Cette nouvelle a-t-elle été lue ?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Image" @@ -1767,7 +1715,7 @@ msgstr "Définition" msgid "Unit definition" msgstr "Définition de l'unité" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Pièce jointe" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Valeur" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Étiquette" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Analyse du code-barres" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Données" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Résultat" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Pas de groupe" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "L'URL du site est verrouillée par configuration" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Redémarrage nécessaire" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Un paramètre a été modifié, ce qui nécessite un redémarrage du serveur" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migration en attente" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Nombre de migrations de base de données en attente" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Nom de l'instance du serveur" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Chaîne de caractères descriptive pour l'instance serveur" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Utiliser le nom de l'instance" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Utiliser le nom de l’instance dans la barre de titre" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Limiter l'affichage de `about`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Afficher la modale `about` uniquement aux super-utilisateurs" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nom de la société" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Nom de société interne" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL de base" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL de base pour l'instance serveur" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Devise par défaut" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Sélectionnez la devise de base pour les calculs de prix" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Devises supportées" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Liste des codes de devises supportés" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Intervalle de mise à jour des devises" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Fréquence de mise à jour des taux de change (définir à zéro pour désactiver)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "jours" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Plugin de mise à jour de devise" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Plugin de mise à jour des devises à utiliser" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Télécharger depuis l'URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Autoriser le téléchargement d'images distantes et de fichiers à partir d'URLs externes" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Limite du volume de téléchargement" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Taille maximale autorisée pour le téléchargement de l'image distante" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Agent utilisateur utilisé pour télécharger depuis l'URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Permettre de remplacer l'agent utilisateur utilisé pour télécharger des images et des fichiers à partir d'URL externe (laisser vide pour la valeur par défaut)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Validation stricte d'URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Spécification du schéma nécessaire lors de la validation des URL" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Intervalle de vérification des mises à jour" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "À quelle fréquence vérifier les mises à jour (définir à zéro pour désactiver)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Backup automatique" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Activer le backup automatique de la base de données et des fichiers médias" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervalle de sauvegarde automatique" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Spécifiez le nombre de jours entre les sauvegardes automatique" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Intervalle de suppression des tâches" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Les résultats de la tâche en arrière-plan seront supprimés après le nombre de jours spécifié" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Intervalle de suppression du journal d'erreur" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Les logs d'erreur seront supprimés après le nombre de jours spécifié" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Intervalle de suppression du journal de notification" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Les notifications de l'utilisateur seront supprimées après le nombre de jours spécifié" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Support des code-barres" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Activer le support du scanner de codes-barres dans l'interface web" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Délai d'entrée du code-barres" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Délai de traitement du code-barres" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Prise en charge de la webcam code-barres" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Autoriser la numérisation de codes-barres via la webcam dans le navigateur" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Modifications de la pièce" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Activer le champ de modification de la pièce" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Permettre la suppression de pièces utilisées dans un assemblage" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Regex IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Expression régulière pour la correspondance avec l'IPN de la Pièce" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Autoriser les IPN dupliqués" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Permettre à plusieurs pièces de partager le même IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Autoriser l'édition de l'IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Permettre de modifier la valeur de l'IPN lors de l'édition d'une pièce" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Copier les données de la pièce" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Copier les données des paramètres de la pièce" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Copier les données de test de la pièce" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Copier les données de test par défaut lors de la duplication d'une pièce" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Copier les templates de paramètres de catégorie" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Copier les templates de paramètres de la catégorie lors de la création d'une pièce" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Modèle" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Les pièces sont des templates par défaut" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Les pièces peuvent être assemblées à partir d'autres composants par défaut" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Composant" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Les pièces peuvent être utilisées comme sous-composants par défaut" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Achetable" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Vendable" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Les pièces sont vendables par défaut" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Les pièces sont traçables par défaut" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuelle" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Les pièces sont virtuelles par défaut" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Afficher l'import dans les vues" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Afficher l'assistant d'importation pour certaine vues de produits" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Afficher les pièces connexes" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Afficher les pièces connexes à une pièce" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Stock initial" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Permettre la création d'un stock initial lors de l'ajout d'une nouvelle pièce" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Données initiales du fournisseur" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Permettre la création des données initiales du fournisseur lors de l'ajout d'une nouvelle pièce" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Format d'affichage du nom de la pièce" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Format pour afficher le nom de la pièce" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Icône de catégorie par défaut" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Icône par défaut de la catégorie de la pièce (vide signifie aucune icône)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Renforcer les unités des paramètres" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Si des unités sont fournies, les valeurs de paramètre doivent correspondre aux unités spécifiées" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Nombre minimal de décimales" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Nombre minimum de décimales à afficher lors de l'affichage des prix" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Utiliser le prix fournisseur" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Inclure les réductions de prix dans le calcul du prix global" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Remplacer l'historique des achats" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "La tarification historique des bons de commande remplace les réductions de prix des fournisseurs" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Utiliser les prix des articles en stock" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Utiliser les prix des données de stock saisies manuellement pour calculer les prix" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Âge de tarification des articles de stock" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Exclure les articles en stock datant de plus de ce nombre de jours des calculs de prix" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Utiliser les prix variants" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Inclure la tarification variante dans le calcul global des prix" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Variantes actives uniquement" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "N'utiliser que des pièces de variante actives pour calculer le prix de la variante" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervalle de regénération des prix" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Nombre de jours avant la mise à jour automatique du prix de la pièce" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Prix internes" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Activer les prix internes pour les pièces" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Substitution du prix interne" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Si disponible, les prix internes remplacent les calculs de la fourchette de prix" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Activer l'impression d'étiquettes" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Activer l'impression d'étiquettes depuis l'interface Web" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Étiquette image DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Résolution DPI lors de la génération de fichiers image pour fournir aux plugins d'impression d'étiquettes" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Activer les rapports" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Activer la génération de rapports" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Mode Débogage" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Générer des rapports en mode debug (sortie HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Journal des erreurs" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Taille de la page" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Taille de page par défaut pour les rapports PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Numéro de Série Universellement Unique" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Les numéros de série pour les articles en stock doivent être uniques au niveau global" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Remplir automatiquement les Numéros de Série" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Remplir automatiquement les numéros de série dans les formulaires" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Supprimer le stock épuisé" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Détermine le comportement par défaut lorsqu'un article de stock est épuisé" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Modèle de code de lot" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Modèle pour générer des codes par défaut pour les articles en stock" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Expiration du stock" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Activer la fonctionnalité d'expiration du stock" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Vendre le stock expiré" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Autoriser la vente de stock expiré" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Délai de péremption du stock" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Nombre de jours pendant lesquels les articles en stock sont considérés comme périmés avant d'expirer" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Construction de stock expirée" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Autoriser la construction avec un stock expiré" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Contrôle de la propriété des stocks" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Activer le contrôle de la propriété sur les emplacements de stock et les articles" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Icône par défaut de l'emplacement du stock" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Icône par défaut de l'emplacement du stock (vide signifie aucune icône)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Afficher les pièces en stock installées" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Modèle de référence de commande de construction" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Modèle requis pour générer le champ de référence de l'ordre de construction" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Nécessite un Responsable propriétaire" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Requiert une pièce verrouillée" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Activer les retours de commandes" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Activer la fonctionnalité de retour de commande dans l'interface utilisateur" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Modèle de référence de retour de commande" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Modifier les retours de commandes terminées" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Autoriser la modification des retours après leur enregistrement" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Modèle de référence de bon de commande" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Modèle requis pour générer le champ de référence du bon de commande" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Expédition par défaut du bon de commande" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Activer la création d'expédition par défaut avec les bons de commandes" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Modifier les commandes de vente terminées" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Autoriser la modification des commandes de vente après avoir été expédiées ou complétées" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Marquer les commandes expédiées comme achevées" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Les commandes marquées comme expédiées seront automatiquement complétées, en contournant le statut « expédié »" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Modèle de référence de commande d'achat" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Modèle requis pour générer le champ de référence de bon de commande" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Modifier les bons de commande terminés" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Autoriser la modification des bons de commande après avoir été expédiés ou complétés" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Achat automatique des commandes" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Marquer automatiquement les bons de commande comme terminés lorsque tous les articles de la ligne sont reçus" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Activer les mots de passe oubliés" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Activer la fonction \"Mot de passe oublié\" sur les pages de connexion" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Activer les inscriptions" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Activer l'auto-inscription pour les utilisateurs sur les pages de connexion" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Activer le SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Activer le SSO sur les pages de connexion" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Activer l'inscription SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Activer l'auto-inscription via SSO pour les utilisateurs sur les pages de connexion" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "Activer la synchronisation du groupe SSO" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "Clé du groupe SSO" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "Carte de groupe SSO" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email requis" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Exiger que l'utilisateur fournisse un mail lors de l'inscription" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Saisie automatique des utilisateurs SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Remplir automatiquement les détails de l'utilisateur à partir des données de compte SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Courriel en double" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mail" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Mot de passe deux fois" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mot de passe" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Domaines autorisés" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grouper sur inscription" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Forcer l'authentification multifacteurs" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Les utilisateurs doivent utiliser l'authentification multifacteurs." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Vérifier les plugins au démarrage" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Vérifier que tous les plugins sont installés au démarrage - activer dans les environnements conteneurs" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Vérifier les mises à jour des plugins" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Activer les vérifications périodiques pour les mises à jour des plugins installés" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Activer l'intégration d'URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Autoriser les plugins à ajouter des chemins URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Activer l'intégration de navigation" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Activer les plugins à s'intégrer dans la navigation" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Activer l'intégration de plugins" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Activer l'intégration de plugin pour ajouter des apps" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Activer l'intégration du planning" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Autoriser les plugins à éxécuter des tâches planifiées" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Activer l'intégration des évènements" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Autoriser les plugins à répondre aux évènements internes" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Fonctionnalité d'inventaire" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Activer la fonctionnalité d'inventaire pour enregistrer les niveaux de stock et le calcul de la valeur du stock" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Exclure les localisations externes" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Période de l'inventaire automatique" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Nombre de jours entre l'enregistrement automatique des stocks (définir à zéro pour désactiver)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Intervalle de suppression des tâches" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Les rapports d'inventaire seront supprimés après le nombre de jours spécifié" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Afficher les noms des utilisateurs" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Activer les données de station de test" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Activer la collecte des données de la station de test pour les résultats de test" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "La pièce interne est active" msgid "Supplier is Active" msgstr "Le fournisseur est actif" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Fabricant" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Société" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Lien vers les informations de l'adresse (externe)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Pièces du fabricant" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "Sélectionner un fabricant" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Nom du paramètre" msgid "Parameter value" msgstr "Valeur du paramètre" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Unités" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "La pièce du fabricant liée doit faire référence à la même pièce de base" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Fournisseur" @@ -3805,7 +3769,7 @@ msgstr "Fournisseur" msgid "Select supplier" msgstr "Sélectionner un fournisseur" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Unité de gestion des stocks des fournisseurs" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Description de la pièce du fournisseur" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Description de la pièce du fournisseur" msgid "Note" msgstr "Note" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "coût de base" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Frais minimums (par exemple frais de stock)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Conditionnement" @@ -3861,7 +3825,7 @@ msgstr "Nombre de paquet" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "plusieurs" @@ -3885,15 +3849,15 @@ msgstr "Date de dernière mise à jour des données de disponibilité" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Devise par défaut utilisée pour ce fournisseur" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "En Stock" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Fichier de données" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "Erreurs" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Valide" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "La quantité doit être un nombre positif" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Client" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Date d'expiration" @@ -4979,7 +4947,7 @@ msgstr "Les numéros de série suivants sont indisponibles" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Profondeur" @@ -5069,7 +5037,7 @@ msgstr "Profondeur" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Premier niveau" @@ -5077,7 +5045,7 @@ msgstr "Premier niveau" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "Cascade" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "Utilise" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Catégorie de composant" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Catégories de composants" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Emplacement par défaut" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Structurel" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Mots-clés par défaut" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Icône" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Icône (facultatif)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Pièces" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "L'IPN doit correspondre au modèle de regex {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Il existe déjà un article en stock avec ce numéro de série" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Une pièce avec ce nom, IPN et révision existe déjà." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nom de l'article" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Mots-clés" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Catégorie de la pièce" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Révision" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Stock Minimum" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Est-ce que cette pièce est active ?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Création Utilisateur" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Propriétaire responsable de cette pièce" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Coût minimal" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Coût maximal" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Coût minimum de vente" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Date" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Notes additionnelles" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Activé" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Requis" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Valeur requise" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Valeur par Défaut" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID de composant" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN de pièce" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Valeur de l'IPN de la pièce" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Surplus" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Validée" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Devise d'achat de l'item" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "Identifiant du Modèle" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Copier l'image" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Copier les paramètres" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Nom catégorie" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Construction" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Éléments en stock" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Fournisseurs" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Stock total" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Échec de la vérification du processus d'arrière-plan" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Prix Minimum" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Prix Maximum" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID de composant" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Aucune correspondance trouvée pour les données du code-barres" msgid "Match found for barcode data" msgstr "Correspondance trouvée pour les données du code-barres" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Notifications InvenTree" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "Extension Intégrée" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Extension" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Hauteur [mm]" msgid "Label height, specified in mm" msgstr "Hauteur de l'étiquette, spécifiée en mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "Modèle d'étiquette" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Extrait " -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Elément" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "Inclure les sous-emplacements dans les résultats filtrés" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Emplacement parent" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filtrer par emplacement parent" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Emplacement externe" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Date d'expiration avant" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Date d’expiration après" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "L'article a été installé dans un autre article ?" msgid "Serial number for this item" msgstr "Numéro de série pour cet article" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "La quantité doit être un nombre entier" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "La quantité ne doit pas dépasser la quantité disponible en stock ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "La quantité ne correspond pas au nombre de numéros de série" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "Le modèle de test n'existe pas" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "L'article de stock est actuellement en production" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Résultat du test" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Valeur de sortie du test" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Pièce jointe au résultat du test" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Notes de test" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "Station de test" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "L'identifiant de la station de test où le test a été effectué" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "Commencé" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Référence du fournisseur" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Expiré" @@ -8024,7 +7932,7 @@ msgstr "La quantité ne doit pas dépasser la quantité disponible en stock ({q} msgid "Enter serial numbers for new items" msgstr "Entrez les numéros de série pour les nouveaux articles" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Pas de changement" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Envoyé au client" msgid "Returned from customer" msgstr "Retourné par le client" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Autorisation refusée" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Vous avez été déconnecté•e d'InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Se connecter" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Redémarrage du serveur nécessaire" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Utilisateurs" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Sélectionner quels utilisateurs sont assignés à ce groupe" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Informations personnelles" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Droits" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Dates importantes" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Prise d'inventaire" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Bons de commande" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Ventes" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po index fefcacf2ea..c7f780eedc 100644 --- a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "למשתמש אין הרשאה לצפות במוזל הזה" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "אימייל (שנית)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "אישור כתובת אימייל" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "חובה לרשום את אותו אימייל בכל פעם." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "הזן תאריך סיום" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "מספרים סידוריים לא נמצאו" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "סינית (פשוטה)" msgid "Chinese (Traditional)" msgstr "סינית (מסורתית)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "אימייל" @@ -368,247 +360,205 @@ msgstr "מטא נתונים של תוסף" msgid "JSON metadata field, for use by external plugins" msgstr "שדה מטא נתונים של JSON, לשימוש על ידי תוספים חיצוניים" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "דפוס מעוצב בצורה לא נכונה" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "צוין מפתח פורמט לא ידוע" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "חסר מפתח פורמט נדרש" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "שדה הפניה לא יכול להיות ריק" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "הפניה חייבת להתאים לדפוס הנדרש" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "מספר האסמכתה גדול מדי" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "שמות כפולים אינם יכולים להתקיים תחת אותו אב" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "בחירה שגויה" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "שם" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "תיאור" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "תיאור (לא חובה)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "נתיב" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "הערות סימון (אופציונלי)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "נתוני ברקוד" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "נתוני ברקוד של צד שלישי" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "ברקוד Hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hash ייחודי של נתוני ברקוד" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "נמצא ברקוד קיים" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "שגיאת שרת" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "נרשמה שגיאה על ידי השרת." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "מטבע" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "בחר מטבע מהאפשרויות הזמינות" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "שם משתמש" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "שם פרטי" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "מקור הבנייה" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "רכיב" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "קישור חיצוני" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "מספרים סידוריים" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "מבוטל" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "הושלם" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "משתמש" @@ -1594,7 +1543,7 @@ msgstr "משתמש" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "קישור" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "קובץ מצורף" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "נשלח ללקוח" msgid "Returned from customer" msgstr "הוחזר מלקוח" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po index e1575a57cf..3442173a8f 100644 --- a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Language: hi_IN\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "तारीख दर्ज करें" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "ई-मेल" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po index 9188a0770e..442d67599f 100644 --- a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API funkciót nem találom" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Érvénytelen szűrők vannak megadva" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Nincs jogosultságod az adatok megtekintéséhez" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (újra)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Email cím megerősítés" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Mindig ugyanazt az email címet kell beírni." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA regisztráció nincs engedélyezve." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "A megadott elsődleges email cím nem valós." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "A megadott email domain nincs jóváhagyva." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Regisztráció le van tiltva." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} átváltása {unit}-ra sikertelen" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Nem megfelelő mennyiség" @@ -100,14 +92,14 @@ msgstr "Dátum megadása" msgid "Invalid decimal value" msgstr "Érvénytelen decimális érték" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Megjegyzések" @@ -120,42 +112,42 @@ msgstr "A(z) '{name}' érték nem a szükséges minta szerinti" msgid "Provided value does not match required pattern: " msgstr "A megadott érték nem felel meg a szükséges mintának: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Üres sorozatszám" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplikált sorozatszám" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Érvénytelen csoport: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Csoport tartomány {group} több mint az engedélyezett ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nem található sorozatszám" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Az egyedi sorozatszámok számának ({len(serials)}) meg kell egyeznie a mennyiséggel ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "HTML tag-ek eltávolítása ebből az értékből" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Kínai (egyszerűsített)" msgid "Chinese (Traditional)" msgstr "Kínai (Hagyományos)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" -msgstr "" +msgstr "Bejelentkezés az appba" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Email" @@ -368,247 +360,205 @@ msgstr "Plugin meta adatok" msgid "JSON metadata field, for use by external plugins" msgstr "JSON meta adat mező, külső pluginok számára" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Helytelenül formázott minta" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Ismeretlen formátum kulcs lett megadva" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Hiányzó formátum kulcs" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Az azonosító mező nem lehet üres" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Az azonosítónak egyeznie kell a mintával" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Azonosító szám túl nagy" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Duplikált nevek nem lehetnek ugyanazon szülő alatt" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Érvénytelen választás" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Név" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Leírás" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Leírás (opcionális)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Elérési út" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown megjegyzések (opcionális)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Vonalkód adat" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Harmadik féltől származó vonalkód adat" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Vonalkód hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Egyedi vonalkód hash" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Létező vonalkód" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Kiszolgálóhiba" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "A kiszolgáló egy hibaüzenetet rögzített." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Pénznem" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Válassz pénznemet a lehetőségek közül" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Felhasználónév" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Keresztnév" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "A felhasználó keresztneve" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Vezetéknév" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "A felhasználó vezetékneve" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "A felhasználó e-mail címe" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Személyzet" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Van-e a felhasználónak személyzeti jogosultsága" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Rendszergazda" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "A felhasználó rendszergazda-e" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktív" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Aktív a felhasználói fiók" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Önnek nincs joga változtatni ezen a felhasználói szerepkörön." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Csak a superuser-ek hozhatnak létre felhasználókat" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "A fiókod sikeresen létrejött." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Kérlek használd a jelszó visszállítás funkciót a belépéshez" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Üdvözlet az InvenTree-ben" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Érvénytelen érték" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Adat fájl" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Fájl kiválasztása feltöltéshez" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Nem támogatott fájlformátum" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Fájl túl nagy" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Nem találhatók oszlopok a fájlban" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Nincsenek adatsorok a fájlban" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nincs adatsor megadva" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nincs adat oszlop megadva" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Szükséges oszlop hiányzik: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplikált oszlop: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Távoli kép" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "A távoli kép URL-je" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Képek letöltése távoli URL-ről nem engedélyezett" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Szülő gyártás" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Változatokkal együtt" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Változatokkal együtt" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Változatokkal együtt" msgid "Part" msgstr "Alkatrész" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategória" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "A gyártást be kell fejezni a törlés előtt" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Fogyóeszköz" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opcionális" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Gyártmány" @@ -756,7 +705,7 @@ msgstr "Gyártmány" msgid "Tracked" msgstr "Követett" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Ellenőrizhető" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Lefoglalva" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Elérhető" msgid "Build Order" msgstr "Gyártási utasítás" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Gyártási utasítások" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Vevői rendelés azonosító" msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Forrás hely" @@ -887,17 +836,17 @@ msgstr "Gyártási állapot" msgid "Build status code" msgstr "Gyártás státusz kód" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Batch kód" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Létrehozás dátuma" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Felelős" @@ -947,7 +896,7 @@ msgstr "Felhasználó vagy csoport aki felelős ezért a gyártásért" msgid "External Link" msgstr "Külső link" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link külső URL-re" @@ -982,7 +931,7 @@ msgstr "A {build} gyártási utasítás elkészült" msgid "A build order has been completed" msgstr "Gyártási utasítás elkészült" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Egyedi követésre jelölt alkatrészeknél kötelező sorozatszámot megadni" @@ -998,18 +947,18 @@ msgstr "Gyártási kimenet már kész" msgid "Build output does not match Build Order" msgstr "Gyártási kimenet nem egyezik a gyártási utasítással" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Mennyiségnek nullánál többnek kell lennie" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "A mennyiség nem lehet több mint a gyártási mennyiség" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "A {serial} gyártási kimenet nem felelt meg az összes kötelező teszten" @@ -1022,11 +971,11 @@ msgstr "Gyártási Rendelés Sor Tétel" msgid "Build object" msgstr "Gyártás objektum" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" msgid "Selected stock item does not match BOM line" msgstr "A készlet tétel nem egyezik az alkatrészjegyzékkel" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Készlet tétel" @@ -1094,367 +1043,367 @@ msgstr "Beépítés ebbe" msgid "Destination stock item" msgstr "Cél készlet tétel" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Gyártási Szint" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Alkatrész neve" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Projekt kód címke" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Leszármazott Gyártások Létrehozása" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Leszármazott Gyártások létrehozása automatikusan" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Gyártás kimenet" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Gyártási kimenet nem egyezik a szülő gyártással" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Kimeneti alkatrész nem egyezik a gyártási utasításban lévő alkatrésszel" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Ez a gyártási kimenet már elkészült" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyedi követésre kötelezett alkatrészeket tartalmaz" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Sorozatszámok" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Add meg a sorozatszámokat a gyártás kimenetéhez" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Hely" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Legyártott készlet helye" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Sorozatszámok automatikus hozzárendelése" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Szükséges tételek automatikus hozzárendelése a megfelelő sorozatszámokkal" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "A következő sorozatszámok már léteznek vagy nem megfelelőek" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "A gyártási kimenetek listáját meg kell adni" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Selejtezet gyártási kimenetek helye" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Foglalások törlése" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Selejtezett kimenetek foglalásainak felszabadítása" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Selejtezés oka" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "A kész gyártási kimenetek helye" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Állapot" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Hiányos foglalás elfogadása" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Kimenetek befejezése akkor is ha a készlet nem\n" "lett teljesen lefoglalva" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Lefoglalt készlet felhasználása" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Az összes ehhez a gyártáshoz lefoglalt készlet felhasználása" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Befejezetlen kimenetek törlése" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "A nem befejezett gyártási kimenetek törlése" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Nem engedélyezett" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Gyártásban fel lett használva" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Foglalás felszabadítása a készre jelentés előtt" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Túlfoglalt készlet" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hogyan kezeljük az gyártáshoz rendelt egyéb készletet" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Pár készlet tétel túl lett foglalva" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Kiosztatlanok elfogadása" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Fogadd el hogy a készlet tételek nincsenek teljesen lefoglalva ehhez a gyártási utastáshoz" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "A szükséges készlet nem lett teljesen lefoglalva" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Befejezetlenek elfogadása" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Fogadd el hogy a szükséges számú gyártási kimenet nem lett elérve" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Szükséges gyártási mennyiség nem lett elérve" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "A Gyártásnak nyitott leszármazott Gyártása van" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "A Gyártásnak folyamatban kell lennie" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Gyártás sor" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Gyártás kimenet" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Gyártás sor tétel" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "A tételnek kell legyen készlete" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Rendelkezésre álló mennyiség ({q}) túllépve" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Gyártási kimenetet meg kell adni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Gyártási kimenetet nem lehet megadni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "A lefoglalandó tételeket meg kell adni" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Készlet hely ahonnan az alkatrészek származnak (hagyd üresen ha bárhonnan)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Hely kizárása" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Készlet tételek kizárása erről a kiválasztott helyről" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Felcserélhető készlet" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "A különböző helyeken lévő készlet egyenrangúan felhasználható" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Készlet helyettesítés" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Helyettesítő alkatrészek foglalásának engedélyezése" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Opcionális tételek" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Opcionális tételek lefoglalása a gyártáshoz" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Nem sikerült az automatikus lefoglalás feladatot elindítani" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "Alkatrészjegyzék Hivatkozás" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "Alkatrészjegyzék Cikk Azonosító" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "Alkatrészjegyzék Alkatrész Név" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Beszállítói alkatrész" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Lefoglalt mennyiség" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Gyártási Hivatkozás" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Alkatrész kategória Neve" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Követésre kötelezett" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Örökölt" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Változatok" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Lefoglalt készlet" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Rendelve" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "Gyártásban" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Külső raktárkészlet" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Elérhető készlet" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Elérhető Helyettesítő Készlet" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Elérhető Készlet Változatokból" @@ -1480,7 +1429,7 @@ msgstr "Törölve" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Kész" @@ -1584,10 +1533,10 @@ msgstr "Kulcs string egyedi kell legyen" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Felhasználó" @@ -1595,7 +1544,7 @@ msgstr "Felhasználó" msgid "Price break quantity" msgstr "Ársáv mennyiség" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Ár" @@ -1620,7 +1569,7 @@ msgstr "Webhook neve" msgid "Is this webhook active" msgstr "Aktív-e ez a webhook" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1684,14 +1633,14 @@ msgstr "Befejeződött a munka ezzel az üzenettel?" msgid "Id" msgstr "Azonosító" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Cím" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1716,11 +1665,10 @@ msgstr "Elolvasva" msgid "Was this news item read?" msgstr "Elolvasva?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Kép" @@ -1768,7 +1716,7 @@ msgstr "Definíció" msgid "Unit definition" msgstr "Mértékegység definíció" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Melléklet" @@ -1838,7 +1786,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Az állapot logikai kulcsa amely megegyezik az üzleti logika egyedi állapotával" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Érték" @@ -1851,7 +1799,7 @@ msgid "Name of the state" msgstr "Az állapot neve" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Címke" @@ -1867,7 +1815,7 @@ msgstr "Szín" msgid "Color that will be displayed in the frontend" msgstr "A felöleten megjelenő szín" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1907,7 +1855,7 @@ msgstr "A logikai kulcsnak szerepelnie kell a hivatkozott állapotok logikai kul msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1923,7 +1871,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "Lezárt" @@ -2007,7 +1955,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Vonalkód beolvasás" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Adat" @@ -2048,7 +1996,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Eredmény" @@ -2166,1065 +2114,1081 @@ msgstr "A felhasználónak nincs joga létrehozni vagy módosítani ehhez a mode msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Nincs csoport" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "A site URL blokkolva van a konfigurációban" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Újraindítás szükséges" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Egy olyan beállítás megváltozott ami a kiszolgáló újraindítását igényli" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Függőben levő migrációk" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Függőben levő adatbázis migrációk" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Kiszolgáló példány neve" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "String leíró a kiszolgáló példányhoz" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Példány név használata" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Példány név használata a címsorban" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Verzió infók megjelenítésének tiltása" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Verzió infók megjelenítése csak admin felhasználóknak" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Cég neve" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Belső cégnév" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Kiindulási URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Kiindulási URL a kiszolgáló példányhoz" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Alapértelmezett pénznem" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Válassz alap pénznemet az ár számításokhoz" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Támogatott valuták" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Támogatott valuták listája" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Árfolyam frissítési gyakoriság" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Milyen gyakran frissítse az árfolyamokat (nulla a kikapcsoláshoz)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "nap" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Árfolyam frissítő plugin" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Kiválasztott árfolyam frissítő plugin" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Letöltés URL-ről" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Képek és fájlok letöltésének engedélyezése külső URL-ről" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Letöltési méret korlát" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maximum megengedett letöltési mérete a távoli képeknek" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Felhasznált User-agent az URL-ről letöltéshez" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "A külső URL-ről letöltéshez használt user-agent felülbírálásának engedélyezése (hagyd üresen az alapértelmezéshez)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Erős URL validáció" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Sablon specifikáció igénylése az URL validálásnál" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Frissítés keresés gyakorisága" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Milyen gyakran ellenőrizze van-e új frissítés (0=soha)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatikus biztonsági mentés" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Adatbázis és média fájlok automatikus biztonsági mentése" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Automata biztonsági mentés gyakorisága" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Hány naponta készüljön automatikus biztonsági mentés" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Feladat törlési gyakoriság" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Háttérfolyamat eredmények törlése megadott nap eltelte után" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Hibanapló törlési gyakoriság" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Hibanapló bejegyzések törlése megadott nap eltelte után" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Értesítés törlési gyakoriság" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Felhasználói értesítések törlése megadott nap eltelte után" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Vonalkód támogatás" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Vonalkód olvasó támogatás engedélyezése a web felületen" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Vonalkód beadási késleltetés" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Vonalkód beadáskor a feldolgozás késleltetési ideje" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Webkamerás vonalkód olvasás" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Webkamerás kódolvasás engedélyezése a böngészőből" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Vonalkód Adat Megjelenítése" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Vonalkód adat megjelenítése a böngészőben szövegként" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Vonalkód Generáló Plugin" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Belső vonalkód generálásra használatos plugin" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Alkatrész változatok" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Alkatrész változat vagy verziószám tulajdonság használata" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "Csak Összeállítás Verzió" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "Csak összeállított alkatrészeknek lehessen verziója" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Lehessen törölni az Összeállításból" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Lehessen olyan alkatrészt törölni ami Összeállításban szerepel" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN reguláris kifejezés" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Reguláris kifejezés ami illeszkedik az alkatrész IPN-re" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Többször is előforduló IPN engedélyezése" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Azonos IPN használható legyen több alkatrészre is" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "IPN szerkesztésének engedélyezése" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "IPN megváltoztatásánsak engedélyezése az alkatrész szerkesztése közben" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Alkatrészjegyzék adatok másolása" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Alkatrész másoláskor az alkatrészjegyzék adatokat is másoljuk alapból" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Alkatrész paraméterek másolása" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Alkatrész másoláskor a paramétereket is másoljuk alapból" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Alkatrész teszt adatok másolása" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Alkatrész másoláskor a tesztek adatait is másoljuk alapból" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kategória paraméter sablonok másolása" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Sablon" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Alkatrészek alapból sablon alkatrészek legyenek" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Alkatrészeket alapból lehessen gyártani másik alkatrészekből" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Összetevő" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Alkatrészek alapból használhatók összetevőként más alkatrészekhez" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Beszerezhető" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Alkatrészek alapból beszerezhetők legyenek" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Értékesíthető" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Alkatrészek alapból eladhatók legyenek" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Alkatrészek alapból követésre kötelezettek legyenek" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuális" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Alkatrészek alapból virtuálisak legyenek" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Importálás megjelenítése a nézetekben" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Import segéd megjelenítése néhány alkatrész nézetben" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Kapcsolódó alkatrészek megjelenítése" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Alkatrész kapcsolódó alkatrészeinek megjelenítése" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Kezdeti készlet adatok" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Kezdeti készlet létrehozása új alkatrész felvételekor" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Kezdeti beszállítói adatok" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Kezdeti beszállítói adatok létrehozása új alkatrész felvételekor" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Alkatrész név megjelenítés formátuma" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formátum az alkatrész név megjelenítéséhez" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Alkatrész kategória alapértelmezett ikon" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Alkatrész kategória alapértelmezett ikon (üres ha nincs)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Csak választható mértékegységek" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "A megadott mértékegység csak a beállított lehetőségekből legyen elfogadva" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Áraknál használt tizedesjegyek min. száma" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Tizedejegyek minimális száma az árak megjelenítésekor" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Áraknál használt tizedesjegyek max. száma" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Tizedejegyek maximális száma az árak megjelenítésekor" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Beszállítói árazás használata" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Beszállítói ársávok megjelenítése az általános árkalkulációkban" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Beszerzési előzmények felülbírálása" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Beszerzési árelőzmények felülírják a beszállítói ársávokat" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Készlet tétel ár használata" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "A kézzel bevitt készlet tétel árak használata az árszámításokhoz" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Készlet tétel ár kora" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Az ennyi napnál régebbi készlet tételek kizárása az árszámításból" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Alkatrészváltozat árak használata" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Alkatrészváltozat árak megjelenítése az általános árkalkulációkban" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Csak az aktív változatokat" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Csak az aktív alkatrészváltozatok használata az árazásban" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Árazás újraszámítás gyakoriság" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Árak automatikus frissítése ennyi nap után" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Belső árak" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Alkatrészekhez belső ár engedélyezése" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Belső ár felülbírálása" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Ha elérhetőek az árkalkulációkban a belső árak lesznek alapul véve" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Címke nyomtatás engedélyezése" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Címke nyomtatás engedélyezése a web felületről" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Címke kép DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Képek felbontása amik átadásra kerülnek címkenyomtató pluginoknak" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Riportok engedélyezése" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Riportok előállításának engedélyezése" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Debug mód" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Riportok előállítása HTML formátumban (hibakereséshez)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Jelentési hibák naplózása" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Jelentések generálása közben jelentkező hibák naplózása" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Lapméret" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Alapértelmezett lapméret a PDF riportokhoz" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Globálisan egyedi sorozatszámok" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "A sorozatszámoknak egyedinek kell lennie a teljes készletre vonatkozóan" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Sorozatszámok automatikus kitöltése" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Sorozatszámok automatikus kitöltése a formokon" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Kimerült készlet törlése" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Alapértelmezett művelet mikor a készlet tétel elfogy" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Batch kód sablon" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Sablon a készlet tételekhez alapértelmezett batch kódok előállításához" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Készlet lejárata" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Készlet lejárat kezelésének engedélyezése" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Lejárt készlet értékesítése" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Lejárt készlet értékesítésének engedélyezése" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Álló készlet ideje" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Napok száma amennyivel a lejárat előtt a készlet tételeket állottnak vesszük" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Lejárt készlet gyártása" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Gyártás engedélyezése lejárt készletből" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Készlet tulajdonosok kezelése" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Tulajdonosok kezelésének engedélyezése a készlet helyekre és tételekre" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Hely alapértelmezett ikon" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Hely alapértelmezett ikon (üres ha nincs)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Beépített készlet megjelenítése" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Beépített készlet tételek megjelenítése a készlet táblákban" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Tételek telepítésekor a darabjegyzék ellenőrzése" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "A beépített tételeknek a szülő elem darabjegyzékében szerepelniük kell" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Lehet Hiányzó Készletet Mozgatni" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Lehet-e olyan készleteket mozgatni készlethelyek között amik nincsenek raktáron" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Gyártási utasítás azonosító minta" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Szükséges minta a gyártási utasítás azonosító mező előállításához" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Felelős tulajdonos szükséges" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Minden rendeléshez felelőst kell rendelni" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Szükséges Aktív Alkatrész" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Inaktív alkatrészekre nem lehet Gyártási Rendelést létrehozni" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Elvárás a Lezárt Alkatrész" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Megakadályozza, hogy nem lezárt alkatrészekre gyártási rendelést lehessen indítani" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "Jóváhagyott Alkatrészjegyzék Kötelező" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Megakadályozza gyártási rendelés készítését ha nincsen az Alkatrészjegyzék jóváhagyva" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "Leszármazott Gyártásoknak Lezártnak Kell Lennie" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Amíg minden leszármazott gyártás le nincsen zárva nem lehet a szülő gyártást lezárni" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Blokkolás a tesztek sikeres végrehajtásáig" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Nem lehet gyártási tételt befejezni amíg valamennyi kötelező teszt sikeres nem lett" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Visszavétel engedélyezése" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Visszavételek engedélyezése a felületen" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Visszavétel azonosító minta" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Szükséges minta a visszavétel azonosító mező előállításához" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Befejezett visszavétel szerkesztése" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Visszavétel szerkesztésének engedélyezése befejezés után" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Vevői rendelés azonosító minta" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Szükséges minta a vevői rendelés azonosító mező előállításához" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Vevői rendeléshez alapértelmezett szállítmány" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Szállítmány automatikus létrehozása az új vevő rendelésekhez" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Befejezett vevői rendelés szerkesztése" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Vevői rendelések szerkesztésének engedélyezése szállítás vagy befejezés után" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Leszállított Rendelések Készre jelölése" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Leszállítottnak jelölt Értékesítési rendelések automatikusan Kész-re lesznek állítva, a \"Leszállított\" állapot átugrásával" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Beszerzési rendelés azonosító minta" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Szükséges minta a beszerzési rendelés azonosító mező előállításához" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Befejezett beszerzési rendelés szerkesztése" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Beszérzési rendelések szerkesztésének engedélyezése kiküldés vagy befejezés után" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Beszerzési rendelések automatikus befejezése" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "A beszerzési rendelés automatikus befejezése ha minden sortétel beérkezett" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Elfelejtett jelszó engedélyezése" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Elfelejtett jelszó funkció engedélyezése a bejentkező oldalon" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Regisztráció engedélyezése" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése a bejelentkező oldalon" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "SSO engedélyezése" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "SSO engedélyezése a bejelentkező oldalon" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "SSO regisztráció engedélyezése" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése SSO-n keresztül a bejelentkező oldalon" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "SSO csoport szinkronizálás engedélyezése" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Az InvenTree csoportok szinkronizálása a hitelesítésszolgáltatóhoz" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "SSO csoport kulcs" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "A csoportkérés tulajdonság neve amit a hitelesítésszolgáltató nyújt" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "SSO csoport hozzárendelés" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Az SSO csoportok hozzárendelése az InvenTree csoportokhoz. Ha a helyi csoport nem létezik, létre lesz hozva." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "Az SSO-n kívüli csoportok eltávolítása" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "Ha egy felhasználóhoz rendelt csoport nem létezik az azonosításszolgáltatóban azt eltávolítsuk el. Ennek a kikapcsolása biztonsági problémákhoz vezethet" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email szükséges" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Kötelező email megadás regisztrációkor" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "SSO felhasználók automatikus kitöltése" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Felhasználó adatainak automatikus kitöltése az SSO fiókadatokból" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Email kétszer" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Regisztráláskor kétszer kérdezze a felhasználó email címét" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Jelszó kétszer" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Regisztráláskor kétszer kérdezze a felhasználó jelszavát" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Engedélyezett domainek" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Feliratkozás korlátozása megadott domain-ekre (vesszővel elválasztva, @-al kezdve)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Csoport regisztráláskor" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Ehhez a csoporthoz lesznek az új felhasználók rendelve. Ha az SSO csoport szinkronizálás engedélyezve van, akkor ez a csoport csak akkor lesz hozzárendelve a felhasználóhoz ha az azonosítás szolgáltató semmilyen csoportot nem rendelt hozzá." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Többfaktoros hitelesítés kényszerítése" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "A felhasználóknak többfaktoros hitelesítést kell használniuk." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Pluginok ellenőrzése indításkor" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Ellenőrizze induláskor hogy minden plugin telepítve van - engedélyezd konténer környezetben (docker)" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Plugin frissítések ellenőrzése" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Frissítések periódikus ellenőrzésének engedélyezése a telepített pluginokra" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "URL integráció engedélyezése" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "URL útvonalalak hozzáadásának engedélyezése a pluginok számára" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Navigációs integráció engedélyezése" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Navigációs integráció engedélyezése a pluginok számára" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "App integráció engedélyezése" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "App hozzáadásának engedélyezése a pluginok számára" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Ütemezés integráció engedélyezése" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Háttérben futó feladatok hozzáadásának engedélyezése a pluginok számára" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Esemény integráció engedélyezése" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Belső eseményekre reagálás engedélyezése a pluginok számára" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Leltár funkció" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Leltár funkció engedélyezése a készlet mennyiség és érték számításhoz" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Külső helyek nélkül" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Külső helyek figyelmen kívül hagyása a leltár számításoknál" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Automatikus leltár időpontja" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Hány naponta történjen automatikus leltár (nulla egyenlő tiltva)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Riport törlési gyakoriság" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Régi leltár riportok törlése hány naponta történjen" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Felhasználók teljes nevének megjelenítése" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Felhasználói név helyett a felhasználók teljes neve jelenik meg" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Teszt állomás adatok engedélyezése" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Tesztállomás adatok gyűjtésének teszt eredménybe gyűjtésének engedélyezése" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3545,13 +3509,13 @@ msgstr "A saját alkatrész Aktív" msgid "Supplier is Active" msgstr "A Beszállító Aktív" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Gyártó" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Cég" @@ -3728,7 +3692,7 @@ msgid "Link to address information (external)" msgstr "Link a címinformációkhoz (külső)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Gyártói alkatrész" @@ -3745,8 +3709,8 @@ msgstr "Válassz alkatrészt" msgid "Select manufacturer" msgstr "Gyártó kiválasztása" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "MPN (Gyártói cikkszám)" @@ -3774,7 +3738,7 @@ msgstr "Paraméter neve" msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Mértékegység" @@ -3794,11 +3758,11 @@ msgstr "Csomagolási mennyiségnek nullánál többnek kell lennie" msgid "Linked manufacturer part must reference the same base part" msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészre kell hivatkoznia" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Beszállító" @@ -3806,7 +3770,7 @@ msgstr "Beszállító" msgid "Select supplier" msgstr "Beszállító kiválasztása" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Beszállítói cikkszám" @@ -3827,7 +3791,7 @@ msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3837,16 +3801,16 @@ msgstr "Beszállítói alkatrész leírása" msgid "Note" msgstr "Megjegyzés" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "alap költség" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Csomagolás" @@ -3862,7 +3826,7 @@ msgstr "Csomagolási mennyiség" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Egy csomagban kiszállítható mennyiség, hagyd üresen az egyedi tételeknél." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "többszörös" @@ -3886,15 +3850,15 @@ msgstr "Utolsó elérhetőségi adat frissítés" msgid "Supplier Price Break" msgstr "Beszállítói Ár Kedvezmény" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Beszállító által használt alapértelmezett pénznem" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Cégnév" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Készleten" @@ -3906,7 +3870,7 @@ msgstr "Saját Állapot Kulcs" msgid "Additional status information for this item" msgstr "További állapot információk erről a tételről" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Kulcs" @@ -3934,6 +3898,10 @@ msgstr "" msgid "Invalid export format" msgstr "Hibás export formátum" +#: importer/models.py:64 +msgid "Data File" +msgstr "Adat fájl" + #: importer/models.py:65 msgid "Data file to import" msgstr "Importálandó adatfájl" @@ -4010,7 +3978,7 @@ msgstr "Eredeti sor adat" msgid "Errors" msgstr "Hibák" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Érvényes" @@ -4430,7 +4398,7 @@ msgid "Quantity must be a positive number" msgstr "Mennyiség pozitív kell legyen" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Vevő" @@ -4836,11 +4804,11 @@ msgstr "Elemek összevonása" msgid "Merge items with the same part, destination and target date into one line item" msgstr "Azonos forrás és cél dátumú Alkatrész tételeinek összevonása egy tételre" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU (leltári azonosító)" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Belső cikkszám" @@ -4880,7 +4848,7 @@ msgstr "Válassz cél helyet a beérkezett tételeknek" msgid "Enter batch code for incoming stock items" msgstr "Írd be a batch kódját a beérkezett tételeknek" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Lejárati dátum" @@ -4980,7 +4948,7 @@ msgstr "" msgid "Return order line item" msgstr "Visszavétel sortétel" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Készlet tétel státusz kódja" @@ -5062,7 +5030,7 @@ msgstr "Csillagozott" msgid "Filter by starred categories" msgstr "Csillagozottra szűrés" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Mélység" @@ -5070,7 +5038,7 @@ msgstr "Mélység" msgid "Filter by category depth" msgstr "Kategória mélységre szűrés" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Felső szint" @@ -5078,7 +5046,7 @@ msgstr "Felső szint" msgid "Filter by top-level categories" msgstr "Csúcs készlethelyre szűrés" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "Lépcsőzetes" @@ -5106,1250 +5074,1190 @@ msgstr "Az adott kategória alkategóriáinak kihagyása" msgid "Has Results" msgstr "Van találat" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Beérkező beszerzési rendelés" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Kimenő vevői rendelés" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Gyártással előállított készlet" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "A gyártási utasításhoz szükséges készlet" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Teljes alkatrészjegyzék jóváhagyása" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Ennek az opciónak ki kll lennie választva" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "Változat" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "Vannak Változatok" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "Alkatrészjegyzék ellenőrizve" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "Összeállított Alkatrész ellenőrizhető" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "Összetevő alkatrész ellenőrizhető" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "Használ" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Alkatrész kategória" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Alapértelmezett hely" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Ebben a kategóriában lévő alkatrészek helye alapban" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Szerkezeti" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "A szerkezeti alkatrész kategóriákhoz nem lehet direktben alkatrészeket hozzáadni, csak az alkategóriáikhoz." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Alapértelmezett kulcsszavak" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Ebben a kategóriában évő alkatrészek kulcsszavai alapban" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ikon (opcionális)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Nem lehet az alkatrészkategóriát szerkezeti kategóriává tenni, mert már vannak itt alkatrészek!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Alkatrészek" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "Lezárt alkatrész nem törölhető" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "Aktív alkatrész nem törölhető" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "Összeállításban felhasznált alkatrész nem törölhető" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Hibás választás a szülő alkatrészre" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Az '{self}' alkatrész nem használható a '{parent}' alkatrészjegyzékében (mert rekurzív lenne)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Az '{parent}' alkatrész szerepel a '{self}' alkatrészjegyzékében (rekurzív)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "Az IPN belső cikkszámnak illeszkednie kell a {pattern} regex mintára" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "Alkatrész nem lehes saját magának verziója" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "Nem lehet olyan alkatrészből új verziót csinálni ami már eleve egy verzió" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "Verzió kódot meg kell adni" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "Verziók csak összeállított alkatrészeknél engedélyezettek" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "Nem lehet sablon alkatrészből új verziót csinálni" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "A szülő alkatrésznek azonos sablonra kell mutatnia" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Létezik már készlet tétel ilyen a sorozatszámmal" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrészekre, már létezik ilyen" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "Adott alkatrész verzióból már létezik egy." -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Ilyen nevű, IPN-ű és reviziójú alkatrész már létezik." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Alkatrész neve" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Sablon-e" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Ez egy sablon alkatrész?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Ez az alkatrész egy másik változata?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Ebből a sablonból" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Alkatrész leírása (opcionális)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Kulcsszavak" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Alkatrész kulcsszavak amik segítik a megjelenést a keresési eredményekben" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Alkatrész kategória" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN (Belső Cikkszám)" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Alkatrész változat vagy verziószám (pl. szín, hossz, revízió, stb.)" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Változat" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "Ez egy másik alkatrész egy verziója?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "Ennek a verziója" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Alapban hol tároljuk ezt az alkatrészt?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Alapértelmezett beszállítói alkatrész" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Alapértelmezett lejárat" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Lejárati idő (napban) ennek az alkatrésznek a készleteire" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimális készlet" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Minimálisan megengedett készlet mennyiség" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Alkatrész mértékegysége" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Gyártható-e ez az alkatrész más alkatrészekből?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Felhasználható-e ez az alkatrész más alkatrészek gyártásához?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Kell-e külön követni az egyes példányait ennek az alkatrésznek?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "Lehet ehhez az alkatrészhez több ellenőrzési eredményt rögzíteni?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Rendelhető-e ez az alkatrész egy külső beszállítótól?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Értékesíthető-e önmagában ez az alkatrész a vevőknek?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Aktív-e ez az alkatrész?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "Lezárt alkatrészt nem lehet szerkeszteni" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ez egy virtuális nem megfogható alkatrész, pl. szoftver vagy licenc?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Tárolt alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Alkatrészjegyzéket ellenőrizte" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Alkatrészjegyzék ellenőrzési dátuma" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Alkatrész felelőse" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Utolsó leltár" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Árszámítások gyorstárazásához használt pénznem" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimum alkatrészjegyzék költség" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Összetevők minimum költsége" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maximum alkatrészjegyzék költség" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Összetevők maximum költsége" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimum beszerzési ár" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Eddigi minimum beszerzési költség" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maximum beszerzési ár" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Eddigi maximum beszerzési költség" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Minimum belső ár" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Minimum költség a belső ársávok alapján" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Maximum belső ár" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Maximum költség a belső ársávok alapján" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Minimum beszállítói ár" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Minimum alkatrész ár a beszállítóktól" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Maximum beszállítói ár" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Maximum alkatrész ár a beszállítóktól" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimum alkatrészváltozat ár" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Alkatrészváltozatok számolt minimum költsége" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maximum alkatrészváltozat ár" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Alkatrészváltozatok számolt maximum költsége" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimum költség" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Minimum költség felülbírálása" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maximum költség" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Maximum költség felülbírálása" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Számított általános minimum költség" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Számított általános maximum költség" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Minimum eladási ár" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Minimum eladási ár az ársávok alapján" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Maximum eladási ár" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Maximum eladási ár az ársávok alapján" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Minimum eladási költség" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Eddigi minimum eladási ár" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Maximum eladási költség" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Eddigi maximum eladási ár" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Leltározható alkatrész" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Tételszám" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Egyedi készlet tételek száma a leltárkor" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Teljes készlet a leltárkor" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Dátum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Leltározva ekkor" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "További megjegyzések" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Leltározta" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Minimum készlet érték" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Becsült minimum raktárkészlet érték" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maximum készlet érték" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Becsült maximum raktárkészlet érték" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Riport" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Leltár riport fájl (generált)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Alkatrész szám" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Leltározott alkatrészek száma" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Felhasználó aki a leltár riportot kérte" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "Alkatrész értékesítési ársáv" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "Alkatrész Teszt Sablon" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Hibás sablon név - legalább egy alfanumerikus karakter kötelező" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "A lehetőségek egyediek kell legyenek" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Teszt sablont csak ellenőrizhetőre beállított alkatrészhez lehet csinálni" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "Már létezik ilyen azonosítójú Teszt sablon ehhez az alkatrészhez" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "Teszt azonosító" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "Egyszerűsített Teszt azonosító" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Engedélyezve" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "Teszt engedélyezve?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Kötelező" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően érték legyen rendelve?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően fájl melléklet legyen rendelve?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Lehetőségek" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "Választható lehetőségek ehhez a Teszthez (vesszővel elválasztva)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "Alkatrész Paraméter Sablon" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Jelölőnégyzet paraméternek nem lehet mértékegysége" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Jelölőnégyzet paraméternek nem lehetnek választási lehetőségei" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Paraméter mértékegysége" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Paraméter leírása" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Jelölőnégyzet" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Ez a paraméter egy jelölőnégyzet?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Választható lehetőségek (vesszővel elválasztva)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "Alkatrész Paraméter" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "Lezárt alkatrész Paramétere nem szerkeszthető" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Hibás választás a paraméterre" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "Alkatrészcsoport Paraméter Sablon" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Alkatrész ID vagy alkatrész név" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Alkatrész ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Egyedi alkatrész ID értéke" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "Alkatrész IPN" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Alkatrész IPN érték" - -#: part/models.py:4130 -msgid "Level" -msgstr "Szint" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Alkatrészjegyzék szint" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás le van zárva" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "Alkatrészjegyzék nem szerkeszthető mert az összeállítás változat le van zárva" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Ez az alkatrészjegyzék tétel fogyóeszköz (készlete nincs követve a gyártásban)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Többlet" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Becsült gyártási veszteség (abszolút vagy százalékos)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Jóváhagyva" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Ez a BOM tétel jóvá lett hagyva" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Öröklődött" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ezt az alkatrészjegyzék tételt az alkatrész változatok alkatrészjegyzékei is öröklik" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Alkatrészváltozatok készlet tételei használhatók ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "A mennyiség egész szám kell legyen a követésre kötelezett alkatrészek esetén" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "A helyettesítő alkatrész nem lehet ugyanaz mint a fő alkatrész" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "1.rész" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "2.rész" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "Szülő Kategória" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Felsőbb szintű alkatrész kategória" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Alkategóriák" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Eredmények" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "Eszerint a sablon szerint rögzített eredmények száma" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Beszerzési pénzneme ennek a készlet tételnek" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "Ennyi alkatrész használja ezt a sablont" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Nincs kiválasztva alkatrész" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Válassz kategóriát" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Eredeti alkatrész" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Válassz eredeti alkatrészt a másoláshoz" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Kép másolása" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Kép másolása az eredeti alkatrészről" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Alkatrészjegyzék másolása" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Alkatrészjegyzék másolása az eredeti alkatrészről" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Paraméterek másolása" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Paraméterek másolása az eredeti alkatrészről" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Megjegyzések másolása" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Megjegyzések másolása az eredeti alkatrészről" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Kezdeti készlet mennyiség" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Add meg a kezdeti készlet mennyiséget. Ha nulla akkor nem lesz készlet létrehozva." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Kezdeti készlet hely" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Add meg a kezdeti készlet helyét" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Válassz beszállítót (hagyd üresen ha nem kell létrehozni)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Válassz gyártót (hagyd üresen ha nem kell létrehozni)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Gyártói cikkszám" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "A kiválasztott cég nem érvényes beszállító" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "A kiválasztott cég nem érvényes gyártó" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "Van már ilyen gyártói alkatrész" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "Van már ilyen beszállítói alkatrész" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Kategória neve" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Gyártásban" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Készlet tételek" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "Verziók" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Beszállítók" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Teljes készlet" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "Nem lefoglalt készlet" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "Variánsok Raktárkészlet" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Alkatrész másolása" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Kezdeti adatok másolása egy másik alkatrészről" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Kezdeti készlet" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Kezdeti készlet mennyiség létrehozása" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Beszállító információ" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Kezdeti beszállító adatok hozzáadása" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Kategória paraméterek másolása" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Paraméter sablonok másolása a kiválasztott alkatrész kategóriából" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Meglévő kép" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "A meglévő alkatrész képfájl neve" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "A képfájl nem létezik" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Leltár riport korlátozása bizonyos alkatrészre és variánsra" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Leltár riport korlátozása bizonyos alkatrész kategóriára és az alatta lévőkre" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Leltár riport korlátozása bizonyos készlethelyre és az alatta lévőkre" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Külső készlet nélkül" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Külső helyeken lévő készlet nélkül" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Riport létrehozása" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Riport fájl létrehozása a számított leltár adatokkal" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Alaktrészek frissítése" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Megadott alkatrészek frissítése a számított leltár adatokkal" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Leltár funkció nincs engedélyezve" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Háttér folyamat ellenőrzés sikertelen" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Minimum ár" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Számított minimum ár felülbírálása" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Minimum ár pénzneme" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Maximum ár" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Számított maximum ár felülbírálása" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Maximum ár pénzneme" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Frissítés" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Alkatrész árak frissítése" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Megadott pénznem átváltása {default_currency}-re sikertelen" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "A Minimum ár nem lehet nagyobb mint a Maximum ár" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "A Maximum ár nem lehet kisebb mint a Minimum ár" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "Szülő összeállítás kiválasztása" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "Összetevő alkatrész kijelölése" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Gyártható" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Létező adat törlése" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Meglévő alkatrészjegyzék tételek törlése a másolás előtt" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Örököltekkel együtt" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Sablon alkatrészektől örökölt alkatrészjegyzék tételek használata" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Hibás sorok kihagyása" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Engedély a hibás sorok kihagyására" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Helyettesítő alkatrészek másolása" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Helyettesítő alkatrészek másolása az alkatrészjegyzék tételek másolásakor" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Meglévő alkatrészjegyzék törlése" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Meglévő alkatrészjegyzék tételek törlése a feltöltés előtt" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Nincs megadva alkatrész oszlop" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Több egyező alkatrész is található" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Nincs egyező alkatrész" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Az alkatrész nem lett összetevőként jelölve" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Mennyiség nincs megadva" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Érvénytelen mennyiség" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Legalább egy alkatrészjegyzék tétel szükséges" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Alkatrész ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6408,7 +6316,7 @@ msgstr "Nincs egyező vonalkód" msgid "Match found for barcode data" msgstr "Egyezés vonalkódra" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "Model nem támogatott" @@ -6505,75 +6413,75 @@ msgstr "Beszerzési rendelés tétele bevételezve" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Beolvasott vonalkód" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "Vonalkód generáláshoz kiválaszottt model neve" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "A vonalkódnyomtatáshoz kiválaszott model objektum azonosítója" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "Tételekhez rendelendő Beszerzési Rendelés" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Beszerzési rendelés nincs függőben" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Bevételezési tételekhez rendelendő Beszerzési Rendelés" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Beszerzési rendelés nincs elküdve" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Bevételezés erre a készlet helyre" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Struktúrális hely nem választható" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "Tételekhez rendelendő Vevői Rendelés" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "Vevői rendelés nincs függőben" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "Tételekhez rendelendő vevői rendelés sortétel" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "Tételekhez rendelendő vevői rendelés szállítmány" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "Szállítmány kiszállítva" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Lefoglalandó mennyiség" @@ -6638,7 +6546,7 @@ msgid "Provides native support for barcodes" msgstr "Alapvető vonalkód támogatást ad" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6672,41 +6580,41 @@ msgstr "Rövid Vonalkód Előtag" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "A rövid vonalkódok előtagjának beállítása hasznos lehet, ha több InvenTree példányt is használnak egy környezetben" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree értesítések" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Integrált kimenő értesítési módszerek" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Email értesítések engedélyezése" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Email küldés engedélyezése esemény értesítésekre" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Slack értesítések engedélyezése" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Slack channel üzenetek küldésének engedélyezése az esemény értesítésekre" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack bejövő webhook URL" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL az üzenetek küldéséhez egy a slack channel-re" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Link megnyitása" @@ -6937,7 +6845,7 @@ msgstr "Beépített plugin" msgid "Package Plugin" msgstr "Csomag plugin" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Bővítmény" @@ -7156,7 +7064,7 @@ msgstr "Konfiguráció törlése" msgid "Delete the plugin configuration from the database" msgstr "Plugin konfiguráció törlése az adatbázisból" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Tételek" @@ -7282,67 +7190,67 @@ msgstr "Magasság [mm]" msgid "Label height, specified in mm" msgstr "Címke magassága, mm-ben" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "Feldolgozandó elemek száma" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "Jelentés készítés befejezve" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Haladás" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "Jelentés készítés állapota" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "Jelentéssablon" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "Kimeneti Fájl" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "Generált kimeneti állomány" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "Címke előállító plugin" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "Címke sablon" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Részlet" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Riport részlet fájl" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Részlet fájl leírása" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Eszköz" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Riport asset fájl" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Asset fájl leírása" @@ -7494,123 +7402,123 @@ msgstr "part_image elem csak alkatrész példánynál használható" msgid "company_image tag requires a Company instance" msgstr "company_image elem csak cég példánynál használható" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "Hely mélységre szűrés" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "Csúcs készlethelyre szűrés" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "Szűrt eredmények tartalmazzák az alhelyeket" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Szülő hely" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Szülő helyre szűrés" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Státuszkód" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Külső hely" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Alkatrész fa" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Lejárat előtt" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Lejárat után" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Állott" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Mennyiség megadása kötelező" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Egy érvényes alkatrészt meg kell adni" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "A megadott beszállítói alkatrész nem létezik" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "A beszállítói alkatrészhez van megadva csomagolási mennyiség, de a use_pack_size flag nincs beállítva" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Sorozatszámot nem lehet megadni nem követésre kötelezett alkatrész esetén" @@ -7630,7 +7538,7 @@ msgstr "Alapértelmezett ikon azokhoz a helyekhez, melyeknek nincs ikonja beáll msgid "Stock Location" msgstr "Készlet hely" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Készlethelyek" @@ -7719,7 +7627,7 @@ msgstr "Válassz egy egyező beszállítói alkatrészt ehhez a készlet tételh msgid "Where is this stock item located?" msgstr "Hol található ez az alkatrész?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "A csomagolása ennek a készlet tételnek itt van tárolva" @@ -7735,7 +7643,7 @@ msgstr "Ez a tétel be van építve egy másik tételbe?" msgid "Serial number for this item" msgstr "Sorozatszám ehhez a tételhez" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Batch kód ehhez a készlet tételhez" @@ -7791,136 +7699,136 @@ msgstr "Egy egység beszerzési ára a beszerzés időpontjában" msgid "Converted to part" msgstr "Alkatrésszé alakítva" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Az alkatrész nem követésre kötelezett" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Mennyiség egész szám kell legyen" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "A mennyiség nem haladhatja meg az elérhető készletet ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "Ez a Teszt sablon nem létezik" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Készlet tétel beépül egy másikba" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "A készlet tétel más tételeket tartalmaz" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Készlet tétel gyártás alatt" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Követésre kötelezett készlet nem vonható össze" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Duplikált készlet tételek vannak" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "A készlet tétel ugyanarra az alkatrészre kell vonatkozzon" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "A készlet tétel ugyanarra a beszállítói alkatrészre kell vonatkozzon" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Készlet tételek állapotainak egyeznie kell" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Készlet tétel nem mozgatható mivel nincs készleten" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "Készlettörténet" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Bejegyzés megjegyzései" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "Készlet Tétel Ellenőrzés Eredménye" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Ehhez a teszthez meg kell adni értéket" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Ehhez a teszthez fel kell tölteni mellékletet" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "A teszt eredménye érvénytelen" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Teszt eredménye" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Teszt kimeneti értéke" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Teszt eredmény melléklet" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Tesztek megjegyzései" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "Teszt állomás" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "A tesztet elvégző tesztállomás azonosítója" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "Elkezdődött" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "A teszt indításának időpontja" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Befejezve" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "A teszt befejezésének időpontja" @@ -7996,7 +7904,7 @@ msgstr "Csomagolási mennyiség használata: a megadott mennyiség ennyi csomag" msgid "Supplier Part Number" msgstr "Beszállítói Cikkszám" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Lejárt" @@ -8025,7 +7933,7 @@ msgstr "A mennyiség nem lépheti túl a rendelkezésre álló készletet ({q})" msgid "Enter serial numbers for new items" msgstr "Írd be a sorozatszámokat az új tételekhez" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Cél készlet hely" @@ -8102,79 +8010,79 @@ msgstr "Válaszd ki a státuszváltásra szánt készlet tételeket" msgid "No stock items selected" msgstr "Nincs készlet tétel kiválasztva" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Alhelyek" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "Felsőbb szintű készlet hely" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Az alkatrésznek értékesíthetőnek kell lennie" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "A tétel egy vevő rendeléshez foglalt" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "A tétel egy gyártási utasításhoz foglalt" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Vevő akihez rendeljük a készlet tételeket" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "A kiválasztott cég nem egy vevő" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Készlet hozzárendelés megjegyzései" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "A készlet tételek listáját meg kell adni" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Készlet összevonás megjegyzései" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Nem egyező beszállítók megengedése" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Különböző beszállítói alkatrészekből származó készletek összevonásának engedélyezése" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Nem egyező állapotok megjelenítése" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Különböző állapotú készletek összevonásának engedélyezése" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Legalább két készlet tételt meg kell adni" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Nincs változás" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Készlet tétel elsődleges kulcs értéke" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Készlet tranzakció megjegyzései" @@ -8306,11 +8214,11 @@ msgstr "Vevőnek kiszállítva" msgid "Returned from customer" msgstr "Vevőtől visszaérkezett" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Hozzáférés megtagadva" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Nincs jogosultságod az oldal megtekintéséhez." @@ -8318,47 +8226,39 @@ msgstr "Nincs jogosultságod az oldal megtekintéséhez." msgid "Authentication Failure" msgstr "Hitelesítési hiba" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Kijelentkeztél az InvenTreeből." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Bejelentkezés" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Az oldal nem található" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "A kért oldal nem létezik" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Belső kiszolgáló hiba" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "A(z) %(inventree_title)s kiszolgáló belső hibát jelzett" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Nézd meg az admin felületen lévő hibanaplót bővebb információkért" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Az oldal karbantartás alatt" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Az oldal jelenleg karbantartás alatt van, hamarosan újra használható lesz!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree logó" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Kiszolgáló újraindítása szükséges" @@ -8424,31 +8324,31 @@ msgstr "Klikk a következő linkre az alkatrész megjelenítéséhez" msgid "Minimum Quantity" msgstr "Minimum mennyiség" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Felhasználók" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Válaszd ki mely felhasználók tartoznak ehhez a csoporthoz" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Az alábbi felhasználók több csoportnak is tagjai" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Személyes adatok" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Jogosultságok" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Fontos dátumok" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "A token visszavonva" @@ -8456,55 +8356,55 @@ msgstr "A token visszavonva" msgid "Token has expired" msgstr "A token lejárt" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API Token" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API Tokenek" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Token név" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Egyedi token név" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Token lejárati dátum" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Utolsó tevékenység" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Token utolsó használata" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Visszavonva" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Adminisztrátor" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Leltár" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Beszerzési rendelések" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Vevői rendelések" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Visszavételek" diff --git a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po index ed36b9c912..16812abeaf 100644 --- a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint tidak ditemukan" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Pengguna tidak memiliki izin untuk melihat model ini" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (ulang)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Konfirmasi alamat email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Masukkan email yang sama." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Alamat surel utama yang diberikan tidak valid." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Domain surel yang diberikan tidak perbolehkan." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Jumlah yang diberikan tidak valid" @@ -100,14 +92,14 @@ msgstr "Masukkan tanggal" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Catatan" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "Nilai yang diberikan tidak sesuai dengan pola yang ditentukan: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Nomor seri kosong" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Gandakan Nomor Seri" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Tidak ada nomor seri ditemukan" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Hapus tag-tag HTML dari nilai ini" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Surel" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Pilihan tidak valid" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nama" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Keterangan" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Keterangan (opsional)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Direktori" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Data Barcode" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Data barcode pihak ketiga" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hash unik data barcode" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Sudah ada barcode yang sama" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Terjadi Kesalahan Server" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Sebuah kesalahan telah dicatat oleh server." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Harus berupa angka yang valid" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Mata Uang" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nama Pengguna" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Nama Depan" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Nama depan dari pengguna" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Nama Belakang" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Nama belakang dari pengguna" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Alamat surel dari pengguna" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Staf" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktif" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Selamat Datang di InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Nilai tidak valid" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "File data" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Pilih file untuk diunggah" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Ukuran file terlalu besar" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Tidak ditemukan kolom dalam file" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Tidak ditemukan barisan data dalam file" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Tidak ada barisan data tersedia" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Tidak ada kolom data tersedia" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Kolom yang diperlukan kurang: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Kolom duplikat: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL file gambar external" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Unduhan gambar dari URL external tidak aktif" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Produksi Induk" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Bagian" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Pesanan harus dibatalkan sebelum dapat dihapus" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Tersedia" msgid "Build Order" msgstr "Order Produksi" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Order Produksi" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Referensi Order Produksi" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referensi Order Penjualan" msgid "SalesOrder to which this build is allocated" msgstr "Order penjualan yang teralokasikan ke pesanan ini" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Lokasi Sumber" @@ -887,17 +836,17 @@ msgstr "Status pembuatan" msgid "Build status code" msgstr "Kode status pembuatan" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Kode Kelompok" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Kode kelompok untuk hasil produksi ini" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Tanggal Pembuatan" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Pengguna yang menyerahkan order ini" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Penanggung Jawab" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "Tautan eksternal" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Tautan menuju URL eksternal" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "Hasil produksi sudah selesai" msgid "Build output does not match Build Order" msgstr "Hasil produksi tidak sesuai dengan order produksi" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Jumlah harus lebih besar daripada nol" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Jumlah harus 1 untuk stok dengan nomor seri" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Stok Item" @@ -1094,366 +1043,366 @@ msgstr "Pasang ke" msgid "Destination stock item" msgstr "Tujuan stok item" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Hasil Produksi" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Hasil produksi tidak sesuai dengan produksi induk" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Hasil bagian tidak sesuai dengan bagian dalam order produksi" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Hasil produksi ini sudah diselesaikan" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Hasil produksi tidak dialokasikan sepenuhnya" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Masukkan jumlah hasil pesanan" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Jumlah bagian yang dapat dilacak harus berupa angka bulat" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Jumlah harus angka bulat karena terdapat bagian yang dapat dilacak dalam daftar barang" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Nomor Seri" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Masukkan nomor seri untuk hasil pesanan" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Lokasi" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Alokasikan nomor seri secara otomatis" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Alokasikan item yang diperlukan dengan nomor seri yang sesuai secara otomatis" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Nomor-nomor seri berikut sudah ada atau tidak valid" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Daftar hasil pesanan harus disediakan" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Lokasi hasil pesanan yang selesai" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Terima Alokasi Tidak Lengkap" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Tidak diizinkan" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Terima Tidak Teralokasikan" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Terima bahwa stok item tidak teralokasikan sepenuhnya ke pesanan ini" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Stok yang diperlukan belum teralokasikan sepenuhnya" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Terima Tidak Selesai" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Terima bahwa jumlah hasil produksi yang diperlukan belum selesai" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Jumlah produksi yang diperlukan masih belum cukup" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Order memiliki hasil produksi yang belum dilengkapi" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Hasil produksi" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Hasil pesanan harus mengarah ke pesanan yang sama" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part harus mengarah ke bagian yang sesuai dengan order produksi" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Item harus tersedia dalam stok" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Jumlah tersedia ({q}) terlampaui" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Hasil produksi harus ditentukan untuk mengalokasikan bagian yang terlacak" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Hasil produksi tidak dapat ditentukan untuk alokasi barang yang tidak terlacak" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Item yang dialokasikan harus disediakan" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lokasi stok, dari mana bahan/bagian akan diambilkan (kosongkan untuk mengambil dari lokasi mana pun)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Lokasi tidak termasuk" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Jangan ambil stok item dari lokasi yang dipilih" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Stok bergantian" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Item stok di beberapa lokasi dapat digunakan secara bergantian" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Stok pengganti" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Izinkan alokasi bagian pengganti" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Item tagihan material" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Dibatalkan" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Selesai" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Pengguna" @@ -1594,7 +1543,7 @@ msgstr "Pengguna" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Harga" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Judul" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Tautan" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Lampiran" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Label" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nama Perusahaan" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "Hari" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponen" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Aktifkan Laporan" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Ukuran Halaman" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Surel diperlukan" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Aktifkan Integrasi Antarmuka" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Perusahaan" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "File data" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Pelanggan" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Tanggal" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Lapor" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Aktif" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Pilihan" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Harga Minimal" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Harga Maksimal" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Perbarui" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Aktifkan surel pemberitahuan" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Buka Laman" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Lampiran perlu diunggah untuk tes ini" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Terkirim ke pelanggan" msgid "Returned from customer" msgstr "Dikembalikan pelanggan" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Pengguna" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Data pribadi" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "Token telah kadaluarsa" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Nama Token" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Terakhir diliat" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Admin" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po index c2a3d07bb9..6e03abf249 100644 --- a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Endpoint API non trovato" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Lista elementi fornita non valida" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Filtri forniti non validi" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "Nessun elemento trovato da eliminare" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "L'utente non ha i permessi per vedere questo modello" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (ancora)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Conferma indirizzo email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "È necessario digitare la stessa e-mail ogni volta." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "La registrazione MFA è disabilitata." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "L'indirizzo email principale fornito non è valido." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "L'indirizzo di posta elettronica fornito non è approvato." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "La registrazione è disabilitata." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Impossibile convertire {original} in {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" @@ -100,14 +92,14 @@ msgstr "Inserisci la data" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Note" @@ -120,42 +112,42 @@ msgstr "Il valore '{name}' non è nel formato del pattern" msgid "Provided value does not match required pattern: " msgstr "Il valore fornito non corrisponde al modello richiesto: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "Impossibile serializzare più di 1000 elementi contemporaneamente" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Numero seriale vuoto" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Seriale Duplicato" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Gruppo non valido: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "L'intervallo di gruppo {group} supera la quantità consentita ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nessun numero di serie trovato" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Il numero di numeri di serie univoci ({len(serials)}) deve corrispondere alla quantità ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Rimuovi i tag HTML da questo valore" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "I dati contengono un contenuto in markdown proibito" @@ -343,11 +335,11 @@ msgstr "Cinese (Semplificato)" msgid "Chinese (Traditional)" msgstr "Cinese (Tradizionale)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Accedi all'app" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Email" @@ -368,247 +360,205 @@ msgstr "Metadati Plugin" msgid "JSON metadata field, for use by external plugins" msgstr "Campo di metadati JSON, da utilizzare con plugin esterni" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Schema formattato impropriamente" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Formato chiave sconosciuta" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Formato chiave mancante" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Il campo di riferimento non può essere vuoto" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Il campo deve corrispondere al modello richiesto" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Numero di riferimento troppo grande" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Nomi duplicati non possono esistere sotto lo stesso genitore" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Scelta non valida" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nome" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Descrizione" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Descrizione (opzionale)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Percorso" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Note di Markdown (opzionale)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Dati del Codice a Barre" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Dati Codice a Barre applicazioni di terze parti" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Codice a Barre" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Codice univoco del codice a barre" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Trovato codice a barre esistente" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Fallimento Attività" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Errore del server" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Deve essere un numero valido" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Selezionare la valuta dalle opzioni disponibili" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nome utente" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Nome" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Nome dell'utente" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Cognome" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Cognome dell'utente" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Indirizzo email dell'utente" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Staff" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Questo utente ha i permessi dello staff" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superuser" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Questo utente è un superutente" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Attivo" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Questo account utente è attivo" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Non hai i permessi per cambiare il ruolo dell'utente." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Solo i superutenti possono creare nuovi utenti" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Il tuo account è stato creato." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Si prega di utilizzare la funzione di reimpostazione password per accedere" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Benvenuto in InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Valore non valido" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "File dati" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Seleziona un file per il caricamento" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Formato file non supportato" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "File troppo grande" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Nessun colonna trovata nel file" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Nessuna riga di dati trovata nel file" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nessun dato fornito" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nessuna colonna di dati fornita" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Colonna richiesta mancante: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Colonna duplicata: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Immagine Remota" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL del file immagine remota" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Il download delle immagini da URL remoto non è abilitato" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Impossibile scaricare l'immagine dall'URL remoto" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Produzione Genitore" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Articolo" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Categoria" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "La produzione deve essere annullata prima di poter essere eliminata" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Consumabile" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opzionale" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Assemblaggio" @@ -756,7 +705,7 @@ msgstr "Assemblaggio" msgid "Tracked" msgstr "Monitorato" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testabile" @@ -768,7 +717,7 @@ msgstr "Ordine In Corso" msgid "Allocated" msgstr "Allocato" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Disponibile" msgid "Build Order" msgstr "Ordine di Produzione" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Ordini di Produzione" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Riferimento Ordine Di Produzione" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Numero di riferimento ordine di vendita" msgid "SalesOrder to which this build is allocated" msgstr "Ordine di vendita a cui questa produzione viene assegnata" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Posizione Di Origine" @@ -887,17 +836,17 @@ msgstr "Stato Produzione" msgid "Build status code" msgstr "Codice stato di produzione" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Codice Lotto" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Codice del lotto per questa produzione" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Data di creazione" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Utente che ha emesso questo ordine di costruzione" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsabile" @@ -947,7 +896,7 @@ msgstr "Utente o gruppo responsabile di questo ordine di produzione" msgid "External Link" msgstr "Collegamento esterno" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link a URL esterno" @@ -982,7 +931,7 @@ msgstr "L'ordine di produzione {build} è stato completato" msgid "A build order has been completed" msgstr "L'ordine di produzione è stato completato" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Deve essere fornita un numero di serie per gli articoli rintracciabili" @@ -998,18 +947,18 @@ msgstr "La produzione è stata completata" msgid "Build output does not match Build Order" msgstr "L'output della produzione non corrisponde all'ordine di compilazione" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantità non può essere maggiore della quantità in uscita" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "L'output della build {serial} non ha superato tutti i test richiesti" @@ -1022,11 +971,11 @@ msgstr "Elemento di Riga Ordine di Produzione" msgid "Build object" msgstr "Crea oggetto" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "La quantità deve essere 1 per lo stock serializzato" msgid "Selected stock item does not match BOM line" msgstr "L'articolo in stock selezionato non corrisponde alla voce nella BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Articoli in magazzino" @@ -1094,366 +1043,366 @@ msgstr "Installa in" msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Livello Produzione" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nome Articolo" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Etichetta Codice Progetto" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Crea Produzioni Figlie" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Genera automaticamente ordini di produzione figli" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Genera Output" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "L'output generato non corrisponde alla produzione principale" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "L'output non corrisponde alle parti dell'ordine di produzione" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Questa produzione è stata già completata" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Questo output non è stato completamente assegnato" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Quantità totale richiesta per articoli rintracciabili" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Quantità totale richiesta, poiché la fattura dei materiali contiene articoli rintracciabili" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Codice Seriale" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Inserisci i numeri di serie per gli output di compilazione (build option)" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Posizione" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Posizione dello stock per l'output della produzione" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Numeri di Serie Assegnazione automatica" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Assegna automaticamente gli articoli richiesti con i numeri di serie corrispondenti" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "I seguenti numeri di serie sono già esistenti o non sono validi" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Deve essere fornito un elenco dei risultati di produzione" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Posizione dello stock per l'output di produzione rimosso" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Scarta Assegnazioni" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Scartare tutte le assegnazioni di magazzino per gli output rimossi" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Posizione per gli output di build completati" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Stato" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Accetta Assegnazione Incompleta" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Completa l'output se le scorte non sono state interamente assegnate" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Rimuovi Output Incompleti" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Elimina gli output di produzione che non sono stati completati" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Non permesso" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Accetta come consumato da questo ordine di produzione" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Non assegnare prima di aver completato questo ordine di produzione" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Giacenza in eccesso assegnata" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Come si desidera gestire gli elementi extra giacenza assegnati all'ordine di produzione" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Alcuni articoli di magazzino sono stati assegnati in eccedenza" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Accetta Non Assegnato" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accetta che gli elementi in giacenza non sono stati completamente assegnati a questo ordine di produzione" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "La giacenza richiesta non è stata completamente assegnata" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Accetta Incompleta" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accetta che il numero richiesto di output di produzione non sia stato completato" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "La quantità di produzione richiesta non è stata completata" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "L'ordine di produzione ha output incompleti" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Linea di produzione" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Genera Output" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "L'output di produzione deve puntare alla stessa produzione" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Articolo linea di produzione" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "gli elementi degli articoli della distinta base devono puntare alla stessa parte dell'ordine di produzione" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantità disponibile ({q}) superata" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "L'output di produzione deve essere specificato per l'ubicazione delle parti tracciate" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "L'output di produzione non deve essere specificato per l'ubicazione delle parti non tracciate" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Deve essere indicata l'allocazione dell'articolo" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Posizione dello stock in cui le parti devono prelevate (lasciare vuoto per prelevare da qualsiasi luogo)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Escludi Ubicazione" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Escludi gli elementi stock da questa ubicazione selezionata" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Scorte Intercambiabili" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Gli elementi in magazzino in più sedi possono essere utilizzati in modo intercambiabile" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Sostituisci Giacenze" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Consenti l'allocazione delle parti sostitutive" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Articoli Opzionali" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Assegna gli elementi opzionali della distinta base all'ordine di produzione" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Articolo Fornitore" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Tracciabile" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Consenti Le Varianti" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Distinta base (Bom)" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Ordinato" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Disponibilità in magazzino" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Annullato" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Completo" @@ -1583,10 +1532,10 @@ msgstr "La stringa chiave deve essere univoca" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Utente" @@ -1594,7 +1543,7 @@ msgstr "Utente" msgid "Price break quantity" msgstr "Quantità prezzo limite" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Prezzo" @@ -1619,7 +1568,7 @@ msgstr "Nome per questa notifica" msgid "Is this webhook active" msgstr "È questa notifica attiva" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "Il lavoro su questo messaggio è terminato?" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Titolo" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Collegamento" @@ -1715,11 +1664,10 @@ msgstr "Letto" msgid "Was this news item read?" msgstr "Queste notizie sull'elemento sono state lette?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Immagine" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Allegato" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Valore" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Etichetta" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Scansione Codice A Barre" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Dati" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "Dati di risposta dalla scansione del codice a barre" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Risultato" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Nessun gruppo" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Riavvio richiesto" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "È stata modificata un'impostazione che richiede un riavvio del server" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Nome Istanza Del Server" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Descrittore stringa per l'istanza del server" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Utilizza nome istanza" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Usa il nome dell'istanza nella barra del titolo" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Limita visualizzazione `Informazioni`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Mostra la modalità `Informazioni` solo ai superusers" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nome azienda" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Nome interno dell'azienda" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL Base" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL di base per l'istanza del server" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Valuta predefinita" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "giorni" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Scarica dall'URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Consenti il download di immagini e file remoti da URL esterno" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Limite Dimensione Download" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Dimensione massima consentita per il download dell'immagine remota" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-agent utilizzato per scaricare dall'URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Consenti di sovrascrivere l'user-agent utilizzato per scaricare immagini e file da URL esterno (lasciare vuoto per il predefinito)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Aggiorna intervallo di controllo" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Quanto spesso controllare gli aggiornamenti (impostare a zero per disabilitare)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Backup automatico" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Abilita il backup automatico di database e file multimediali" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervallo Di Backup Automatico" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Definisci i giorni intercorrenti tra un backup automatico e l'altro" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "I risultati delle attività in background verranno eliminati dopo un determinato numero di giorni" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "I log di errore verranno eliminati dopo il numero specificato di giorni" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Le notifiche dell'utente verranno eliminate dopo il numero di giorni specificato" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Supporto Codice A Barre" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Memorizza Risultati Barcode" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Memorizza i risultati della scansione del codice a barre nel database" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Numero Massimo Scansioni Barcode" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Numero massimo di risultati della scansione del codice a barre da memorizzare" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Codice a barre inserito scaduto" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Tempo di ritardo di elaborazione codice a barre" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Codice a Barre Supporto Webcam" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Consenti la scansione del codice a barre tramite webcam nel browser" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Abilita il campo revisione per l'articolo" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Schema di espressione regolare per l'articolo corrispondente IPN" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Consenti duplicati IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Permetti a più articoli di condividere lo stesso IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Permetti modifiche al part number interno (IPN)" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Consenti di modificare il valore del part number durante la modifica di un articolo" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Copia I Dati Della distinta base dell'articolo" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Copia i dati della Distinta Base predefinita quando duplichi un articolo" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Copia I Dati Parametro dell'articolo" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Copia i dati dei parametri di default quando si duplica un articolo" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Copia I Dati dell'Articolo Test" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Copia i dati di prova di default quando si duplica un articolo" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Copia Template Parametri Categoria" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Modello" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Gli articoli sono modelli per impostazione predefinita" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Componente" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Acquistabile" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Vendibile" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Gli articoli sono tracciabili per impostazione predefinita" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuale" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Gli articoli sono virtuali per impostazione predefinita" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Mostra l'importazione nelle viste" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Mostra la procedura guidata di importazione in alcune viste articoli" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Mostra articoli correlati" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Visualizza parti correlate per ogni articolo" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Dati iniziali dello stock" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Consentire la creazione di uno stock iniziale quando si aggiunge una nuova parte" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Dati iniziali del fornitore" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Consentire la creazione dei dati iniziali del fornitore quando si aggiunge una nuova parte" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Formato di visualizzazione del nome articolo" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formato per visualizzare il nome dell'articolo" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Icona predefinita Categoria Articolo" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Icona predefinita Categoria Articolo (vuoto significa nessuna icona)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Usa Prezzi Fornitore" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Includere le discontinuità di prezzo del fornitore nei calcoli generali dei prezzi" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Ignora la Cronologia Acquisti" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Cronologia dei prezzi dell'ordine di acquisto del fornitore superati con discontinuità di prezzo" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Utilizzare i prezzi degli articoli in stock" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Utilizzare i prezzi dei dati di magazzino inseriti manualmente per il calcolo dei prezzi" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Età dei prezzi degli articoli in stock" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Escludere dal calcolo dei prezzi gli articoli in giacenza più vecchi di questo numero di giorni" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Utilizza Variazione di Prezzo" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Includi la variante dei prezzi nei calcoli dei prezzi complessivi" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Solo Varianti Attive" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Utilizza solo articoli di varianti attive per calcolare i prezzi delle varianti" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Numero di giorni prima che il prezzo dell'articolo venga aggiornato automaticamente" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Prezzi interni" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Abilita prezzi interni per gli articoli" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Sovrascrivi Prezzo Interno" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Se disponibile, i prezzi interni sostituiscono i calcoli della fascia di prezzo" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Abilita stampa etichette" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Abilita la stampa di etichette dall'interfaccia web" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Etichetta Immagine DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Risoluzione DPI quando si generano file di immagine da fornire ai plugin di stampa per etichette" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Abilita Report di Stampa" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Abilita generazione di report di stampa" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Modalità Debug" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Genera report in modalità debug (output HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Dimensioni pagina" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Dimensione predefinita della pagina per i report PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Seriali Unici Globali" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "I numeri di serie per gli articoli di magazzino devono essere univoci" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Auto Riempimento Numeri Seriali" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Auto riempimento numeri nel modulo" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Elimina scorte esaurite" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Modello Codice a Barre" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Modello per la generazione di codici batch predefiniti per gli elementi stock" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Scadenza giacenza" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Abilita funzionalità di scadenza della giacenza" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Vendi giacenza scaduta" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Consenti la vendita di stock scaduti" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Tempo di Scorta del Magazzino" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Numero di giorni in cui gli articoli in magazzino sono considerati obsoleti prima della scadenza" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Crea giacenza scaduta" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Permetti produzione con stock scaduto" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Controllo della proprietà della giacenza" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Abilita il controllo della proprietà sulle posizioni e gli oggetti in giacenza" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Icona Predefinita Ubicazione di Magazzino" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Icona Predefinita Ubicazione di Magazzino (vuoto significa nessuna icona)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Modello Di Riferimento Ordine Di Produzione" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di produzione" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Modello Di Riferimento Ordine Di Vendita" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di vendita" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Spedizione Predefinita Ordine Di Vendita" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Abilita la creazione di spedizioni predefinite con ordini di vendita" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Modifica Ordini Di Vendita Completati" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Consenti la modifica degli ordini di vendita dopo che sono stati spediti o completati" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Modello di Riferimento Ordine D'Acquisto" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di acquisto" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Modifica Ordini Di Acquisto Completati" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Consenti la modifica degli ordini di acquisto dopo che sono stati spediti o completati" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Abilita password dimenticata" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Abilita la funzione password dimenticata nelle pagine di accesso" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Abilita registrazione" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "SSO abilitato" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Abilita SSO nelle pagine di accesso" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Abilita registrazione SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Abilita l'auto-registrazione tramite SSO per gli utenti nelle pagine di accesso" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email richiesta" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Riempimento automatico degli utenti SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Posta due volte" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Al momento della registrazione chiedere due volte all'utente l'indirizzo di posta elettronica" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Password due volte" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Al momento della registrazione chiedere agli utenti due volte l'inserimento della password" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Domini consentiti" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Gruppo iscrizione" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Applica MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Gli utenti devono utilizzare la sicurezza a due fattori." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Controlla i plugin all'avvio" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Controlla che tutti i plugin siano installati all'avvio - abilita in ambienti contenitore" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Abilita l'integrazione URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Attiva plugin per aggiungere percorsi URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Attiva integrazione navigazione" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Abilita i plugin per l'integrazione nella navigazione" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Abilita l'app integrata" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Abilita plugin per aggiungere applicazioni" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Abilita integrazione pianificazione" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Abilita i plugin per eseguire le attività pianificate" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Abilita eventi integrati" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Abilita plugin per rispondere agli eventi interni" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Abilita integrazione interfaccia" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Abilita i plugin per l'integrazione nell'interfaccia utente" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funzionalità Dell'Inventario" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Abilita la funzionalità d'inventario per la registrazione dei livelli di magazzino e il calcolo del valore di magazzino" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Inventario periodico automatico" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Numero di giorni tra la registrazione automatica dell'inventario (imposta 0 per disabilitare)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "I rapporti d'inventario verranno eliminati dopo il numero specificato di giorni" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "Crea modello al caricamento" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Crea un nuovo modello di test quando si caricano dati di test che non corrispondono a un modello esistente" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Produttore" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Azienda" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Codice articolo produttore" @@ -3744,8 +3708,8 @@ msgstr "Seleziona articolo" msgid "Select manufacturer" msgstr "Seleziona Produttore" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "Codice articolo produttore (MPN)" @@ -3773,7 +3737,7 @@ msgstr "Nome parametro" msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Unità" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Fornitore" @@ -3805,7 +3769,7 @@ msgstr "Fornitore" msgid "Select supplier" msgstr "Seleziona fornitore" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Unità di giacenza magazzino fornitore" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Descrizione articolo fornitore" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Descrizione articolo fornitore" msgid "Note" msgstr "Nota" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "costo base" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Confezionamento" @@ -3861,7 +3825,7 @@ msgstr "Quantità Confezione" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "multiplo" @@ -3885,15 +3849,15 @@ msgstr "Data dell’ultimo aggiornamento dei dati sulla disponibilità" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Valuta predefinita utilizzata per questo fornitore" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "In magazzino" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "File dati" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Valido" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "La quantità deve essere un numero positivo" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Numero Dell'articolo Interno" @@ -4879,7 +4847,7 @@ msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti" msgid "Enter batch code for incoming stock items" msgstr "Inserisci il codice univoco per gli articoli in arrivo" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Data di Scadenza" @@ -4979,7 +4947,7 @@ msgstr "I seguenti numeri di serie non sono disponibili" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Ordine D'Acquisto In Arrivo" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Ordine di Vendita in Uscita" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Giacenza prodotta dall'Ordine di Costruzione" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Giacenza richiesta per l'Ordine di Produzione" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Convalida l'intera Fattura dei Materiali" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Questa opzione deve essere selezionata" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Categoria Articoli" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Categorie Articolo" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Posizione Predefinita" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Posizione predefinita per gli articoli di questa categoria" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Strutturale" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Le parti non possono essere assegnate direttamente a una categoria strutturale, ma possono essere assegnate a categorie subordinate." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Keywords predefinite" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Parole chiave predefinite per gli articoli in questa categoria" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Icona" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Icona (facoltativa)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Non puoi rendere principale questa categoria di articoli perché alcuni articoli sono già assegnati!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Articoli" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Scelta non valida per l'articolo principale" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Esiste già un elemento stock con questo numero seriale" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Un articolo con questo Nome, IPN e Revisione esiste già." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Gli articoli non possono essere assegnati a categorie articolo principali!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nome articolo" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "È Template" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Quest'articolo è un articolo di template?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Questa parte è una variante di un altro articolo?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante Di" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Parole Chiave" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Categoria articolo" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN - Numero di riferimento interno" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Numero di revisione o di versione" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisione" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Dove viene normalmente immagazzinato questo articolo?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Fornitore predefinito" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Articolo fornitore predefinito" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Scadenza Predefinita" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Scadenza (in giorni) per gli articoli in giacenza di questo pezzo" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Scorta Minima" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Livello minimo di giacenza consentito" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Unita di misura per questo articolo" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Questo articolo può essere costruito da altri articoli?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Questo articolo può essere utilizzato per costruire altri articoli?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Questo articolo ha il tracciamento per gli elementi unici?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Quest'articolo può essere acquistato da fornitori esterni?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Questo pezzo può essere venduto ai clienti?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Quest'articolo è attivo?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "È una parte virtuale, come un prodotto software o una licenza?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Somma di controllo Distinta Base" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Somma di controllo immagazzinata Distinta Base" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Distinta Base controllata da" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Data di verifica Distinta Base" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Creazione Utente" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Ultimo Inventario" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Vendita multipla" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Valuta utilizzata per calcolare i prezzi" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Costo Minimo Distinta Base" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Costo minimo dei componenti dell'articolo" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Costo Massimo Distinta Base" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Costo massimo dei componenti dell'articolo" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Importo Acquisto Minimo" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Costo minimo di acquisto storico" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Importo massimo acquisto" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Costo massimo di acquisto storico" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Prezzo Interno Minimo" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Costo minimo basato su interruzioni di prezzo interne" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Prezzo Interno Massimo" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Costo massimo basato su interruzioni di prezzo interne" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Prezzo Minimo Fornitore" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Prezzo minimo articolo da fornitori esterni" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Prezzo Massimo Fornitore" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Prezzo massimo dell'articolo proveniente da fornitori esterni" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Variazione di costo minimo" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Costo minimo calcolato di variazione dell'articolo" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Massima variazione di costo" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Costo massimo calcolato di variazione dell'articolo" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Costo Minimo" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Costo Massimo" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Costo minimo totale calcolato" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Costo massimo totale calcolato" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Prezzo Di Vendita Minimo" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Prezzo minimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Prezzo Di Vendita Massimo" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Prezzo massimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Prezzo storico minimo di vendita" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Prezzo storico massimo di vendita" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Articolo per l'inventario" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Contatore Elemento" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Numero di scorte individuali al momento dell'inventario" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Totale delle scorte disponibili al momento dell'inventario" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Data in cui è stato effettuato l'inventario" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Note aggiuntive" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Utente che ha eseguito questo inventario" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Costo Minimo Scorta" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Costo minimo stimato di magazzino a disposizione" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Costo Massimo Scorte" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Costo massimo stimato di magazzino a disposizione" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "File Report Inventario (generato internamente)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Conteggio Articolo" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Numero di articoli oggetto d'inventario" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Utente che ha richiesto questo report inventario" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Il modello di prova può essere creato solo per gli articoli testabili" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nome Test" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Inserisci un nome per la prova" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Inserisci descrizione per questa prova" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Abilitato" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Richiesto" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Questa prova è necessaria per passare?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Valore richiesto" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Questa prova richiede un valore quando si aggiunge un risultato di prova?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Allegato Richiesto" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Questa prova richiede un file allegato quando si aggiunge un risultato di prova?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Il nome del modello del parametro deve essere univoco" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Nome Parametro" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Descrizione del parametro" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Articolo principale" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Modello Parametro" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Valore del Parametro" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Valore Predefinito" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Valore Parametro Predefinito" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID articolo o nome articolo" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Codice Articolo" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Valore ID articolo univoco" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN Articolo" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Valore IPN articolo" - -#: part/models.py:4130 -msgid "Level" -msgstr "Livello" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Livello distinta base" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Seleziona articolo principale" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Articolo subordinato" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Seleziona l'articolo da utilizzare nella Distinta Base" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Quantità Distinta Base per questo elemento Distinta Base" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Questo elemento della Distinta Base è opzionale" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Questo elemento della Distinta Base è consumabile (non è tracciato negli ordini di produzione)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Eccedenza" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Quantità stimata scarti di produzione (assoluta o percentuale)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Riferimento Elemento Distinta Base" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Note Elemento Distinta Base" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Codice di controllo" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Codice di controllo Distinta Base" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Convalidato" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Questo elemento della Distinta Base viene ereditato dalle Distinte Base per gli articoli varianti" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Gli elementi in giacenza per gli articoli varianti possono essere utilizzati per questo elemento Distinta Base" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "La quantità deve essere un valore intero per gli articoli rintracciabili" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "L'articolo subordinato deve essere specificato" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Elemento Distinta Base Sostituito" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sostituita non può essere la stessa dell'articolo principale" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Elemento principale Distinta Base" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Sostituisci l'Articolo" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Articolo 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Articolo 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Seleziona Prodotto Relativo" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Non si può creare una relazione tra l'articolo e sé stesso" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "La relazione duplicata esiste già" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Sottocategorie" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Valuta di acquisto di questo articolo in stock" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Quantità Speculativa" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "ID Modello" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Articolo Originale" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Seleziona l'articolo originale da duplicare" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Copia immagine" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Copia immagine dall'articolo originale" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Copia Distinta Base" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Copia fattura dei materiali dall'articolo originale" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Copia parametri" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Copia i dati dei parametri dall'articolo originale" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Quantità iniziale" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Specificare la quantità iniziale disponibile per questo Articolo. Se la quantità è zero, non viene aggiunta alcuna quantità." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Ubicazione Iniziale Magazzino" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Specificare l'ubicazione iniziale del magazzino per questo Articolo" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Seleziona il fornitore (o lascia vuoto per saltare)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Seleziona il produttore (o lascia vuoto per saltare)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Codice articolo Produttore" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "L'azienda selezionata non è un fornitore valido" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "L'azienda selezionata non è un produttore valido" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "L'articolo del produttore che corrisponde a questo MPN esiste già" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "L'articolo del fornitore che corrisponde a questo SKU esiste già" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Nome Categoria" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "In Costruzione" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Articoli in magazzino" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Fornitori" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Giacenze Totali" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Duplica articolo" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Copia i dati iniziali da un altro Articolo" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Stock iniziale" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Crea Articolo con quantità di scorta iniziale" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Informazioni Fornitore" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Aggiungi le informazioni iniziali del fornitore per questo articolo" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Copia Parametri Categoria" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Copia i parametri dai modelli della categoria articolo selezionata" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Limitare il report d'inventario ad un articolo particolare e a eventuali articoli varianti" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Limita il report d'inventario ad una particolare categoria articolo, e a eventuali categorie secondarie" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Limita il report d'inventario ad una particolare ubicazione di magazzino, e a eventuali ubicazioni secondarie" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Genera Report" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Genera file di report contenente dati di inventario calcolati" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Aggiorna Articoli" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Aggiorna gli articoli specificati con i dati calcolati di inventario" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "La funzione Inventario non è abilitata" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Controllo in background non riuscito" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Prezzo Minimo" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Prezzo Massimo" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Aggiorna" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Aggiorna i prezzi per questo articolo" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Puoi produrre" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Seleziona l'articolo da cui copiare la distinta base" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Rimuovi Dati Esistenti" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Rimuovi elementi distinta base esistenti prima di copiare" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Includi Ereditato" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Includi gli elementi Distinta Base ereditati da prodotti template" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Salta Righe Non Valide" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Abilita questa opzione per saltare le righe non valide" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Copia Articoli sostitutivi" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Copia articoli sostitutivi quando duplichi gli elementi distinta base" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Cancella Distinta Base esistente" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Rimuovi elementi distinta base esistenti prima del caricamento" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Nessuna colonna articolo specificata" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Trovati più articoli corrispondenti" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Nessun articolo corrispondente trovato" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "L'articolo non è indicato come componente" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Quantità non fornita" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Quantità non valida" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Almeno un elemento della distinta base è richiesto" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Codice Articolo" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Nessuna corrispondenza trovata per i dati del codice a barre" msgid "Match found for barcode data" msgstr "Corrispondenza trovata per i dati del codice a barre" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Fornisce supporto nativo per codici a barre" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree Notifiche" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Attiva notifiche email" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Consenti l'invio di email per le notifiche di eventi" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Abilita notifiche per rallentamenti" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Consenti l'invio di messaggi di rallentamenti canale per le notifiche degli eventi" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Rallentamenti in entrata notifiche url" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "Questo URL è stato utilizzato per inviare messaggi a un canale rallentato" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Apri collegamento" @@ -6936,7 +6844,7 @@ msgstr "Plugin Integrato" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Altezza [mm]" msgid "Label height, specified in mm" msgstr "Larghezza dell'etichetta, specificata in mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Report file snippet" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Descrizione file snippet" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Risorsa" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Report file risorsa" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "File risorsa descrizione" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "Nome della parte (maiuscole e minuscole)" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "Il nome della parte contiene (maiuscole e minuscole)" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "Nome della parte (regex)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "IPN della parte (maiuscole e minuscole)" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "IPN della parte contiene (maiuscole e minuscole)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "IPN della parte (regex)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "Giacenza minima" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "Giacenza massima" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Codici di stato" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Ubicazione Esterna" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Obsoleto" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "La quantità è richiesta" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Deve essere fornita un articolo valido" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "I numeri di serie non possono essere forniti per un articolo non tracciabile" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Ubicazione magazzino" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Posizioni magazzino" @@ -7718,7 +7626,7 @@ msgstr "Seleziona un fornitore articolo corrispondente per questo elemento di ma msgid "Where is this stock item located?" msgstr "Dove si trova questo articolo di magazzino?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Imballaggio di questo articolo di magazzino è collocato in" @@ -7734,7 +7642,7 @@ msgstr "Questo elemento è stato installato su un altro elemento?" msgid "Serial number for this item" msgstr "Numero di serie per questo elemento" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Codice lotto per questo elemento di magazzino" @@ -7790,136 +7698,136 @@ msgstr "Prezzo di acquisto unitario al momento dell’acquisto" msgid "Converted to part" msgstr "Convertito in articolo" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "L'articolo non è impostato come tracciabile" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "La quantità deve essere un numero intero" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "I numeri di serie devono essere forniti come elenco" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "La quantità non corrisponde ai numeri di serie" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "L'elemento di magazzino è stato assegnato a un ordine di vendita" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "L'elemento di magazzino è installato in un altro elemento" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "L'elemento di magazzino contiene altri elementi" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "L'elemento di magazzino è stato assegnato a un cliente" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "L'elemento di magazzino è attualmente in produzione" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Il magazzino serializzato non può essere unito" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Duplica elementi di magazzino" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo fornitore" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "I codici di stato dello stock devono corrispondere" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Le giacenze non possono essere spostate perché non disponibili" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Note d'ingresso" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Il valore deve essere fornito per questo test" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "L'allegato deve essere caricato per questo test" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Risultato Test" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Test valore output" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Risultato della prova allegato" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Note del test" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Scaduto" @@ -8024,7 +7932,7 @@ msgstr "La quantità non deve superare la quantità disponibile ({q})" msgid "Enter serial numbers for new items" msgstr "Inserisci i numeri di serie per i nuovi elementi" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Posizione magazzino di destinazione" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Sottoallocazioni" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "L'articolo deve essere vendibile" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "L'elemento è assegnato a un ordine di vendita" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Elemento assegnato a un ordine di costruzione" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Cliente a cui assegnare elementi di magazzino" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "L'azienda selezionata non è un cliente" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Note sull'assegnazione delle scorte" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Deve essere fornito un elenco degli elementi di magazzino" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Note di fusione di magazzino" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Consenti fornitori non corrispondenti" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Consenti di unire gli elementi di magazzino che hanno fornitori diversi" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Consenti stato non corrispondente" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Consenti di unire gli elementi di magazzino con diversi codici di stato" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Devono essere riforniti almeno due elementi in magazzino" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Valore di chiave primaria StockItem" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Note sugli spostamenti di magazzino" @@ -8305,11 +8213,11 @@ msgstr "Inviato al cliente" msgid "Returned from customer" msgstr "Restituito dal cliente" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Permesso negato" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Non ha i permessi per visualizzare la pagina." @@ -8317,47 +8225,39 @@ msgstr "Non ha i permessi per visualizzare la pagina." msgid "Authentication Failure" msgstr "Autenticazione Fallita" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Sei stato disconnesso da InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Accedi" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Pagina Non Trovata" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "La pagina richiesta non esiste" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Errore Interno del Server" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "Il server %(inventree_title)s ha rilevato un errore interno" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Consultare il log degli errori nell'interfaccia di amministrazione per ulteriori dettagli" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Il sito è in manutenzione" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Il sito è attualmente in manutenzione e dovrebbe essere online presto!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "È necessario riavviare il server" @@ -8423,31 +8323,31 @@ msgstr "Clicca il seguente link per visualizzare questo articolo" msgid "Minimum Quantity" msgstr "Quantità minima" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Utenti" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Selezionare quali utenti sono assegnati a questo gruppo" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Informazioni personali" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Permessi" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Date Importanti" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Amministratore" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Inventario" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Ordine di acquisto" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Ordini di Vendita" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Ordini di reso" diff --git a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po index b9441cbbe4..cde914b32f 100644 --- a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "APIエンドポイントが見つかりません" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "無効なアイテムリスト" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "提供されたフィルタが無効" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "削除する項目が見つかりません" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "ユーザーにこのモデルを表示する権限がありません" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "認証メールが送信されました。" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "メールアドレス(確認用)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "メールアドレスの確認" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "毎回同じメールアドレスを入力する必要があります。" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA 登録は無効です。" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "指定されたプライマリEメールアドレスは無効です。" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "指定されたメールドメインは承認されていません。" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "登録は無効です。" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original}を{unit}に変換できませんでした。" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "数量コードが無効です" @@ -100,14 +92,14 @@ msgstr "日付を入力する" msgid "Invalid decimal value" msgstr "無効な10進数値" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "メモ" @@ -120,42 +112,42 @@ msgstr "値 '{name}' はパターン形式で表示されません" msgid "Provided value does not match required pattern: " msgstr "指定された値が必要なパターンと一致しません: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "一度に1000以上のアイテムをシリアライズすることはできません。" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "シリアル番号は空です" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "重複シリアル" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "無効なグループです:{group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "グループ範囲 {group} が許容数量を超過 ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "シリアル番号が見つかりません" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "一意のシリアル番号の数({len(serials)})は数量({expected_quantity})と一致する必要があります。" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "この値からHTMLタグを削除" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "データに禁止されているマークダウン・コンテンツが含まれています。" @@ -343,11 +335,11 @@ msgstr "中国語 (簡体字)" msgid "Chinese (Traditional)" msgstr "中国語 (繁体字)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "アプリにログイン" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "メールアドレス" @@ -368,247 +360,205 @@ msgstr "プラグインメタデータ" msgid "JSON metadata field, for use by external plugins" msgstr "外部プラグインで使用するためのJSONメタデータフィールド" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "不適切な書式パターン" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "不明なフォーマットキーが指定されました" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "必要なフォーマットキーがありません" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "参照フィールドを空にすることはできません。" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "参照は必須パターンに一致する必要があります。" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "参照番号が大きすぎる" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "同じ親に重複した名前は存在しません。" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "無効な選択です" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "お名前" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "説明" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "説明 (オプション)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "パス" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "マークダウンメモ (オプション)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "バーコード情報" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "サードパーティ製バーコードデータ" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "バーコードハッシュ" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "バーコードデータのユニークなハッシュ" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "既存のバーコードが見つかりました" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "タスクの失敗" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "サーバーエラー" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "サーバーによってエラーが記録されました。" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "通貨" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "利用可能なオプションから通貨を選択してください" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "ユーザー名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "ユーザーの名" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "姓" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "ユーザーの姓" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "ユーザーのメールアドレス" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "スタッフ" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "このユーザーにはスタッフ権限がありますか?" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "スーパーユーザー" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "このユーザーはスーパーユーザーですか?" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "有効" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "このユーザーアカウントはアクティブですか" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "このユーザのロールを変更する権限がありません" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "新しいユーザーを作成できるのはスーパーユーザーのみです。" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "アカウントが作成されました" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "パスワードリセット機能を使ってログインしてください" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "InvenTreeへようこそ" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "無効な値です。" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "データファイル" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "アップロードするファイルを選択" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "サポートされていないファイル形式" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "ファイルサイズが大きすぎます" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "ファイルに列が見つかりません" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "ファイルにデータ行がみつかりません" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "データが入力されていません" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "データ列が指定されていません" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "必須の列がありません: {name}" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "{col} 列が重複しています。" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "遠隔画像" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "外部画像ファイルのURL" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "外部URLからの画像ダウンロードは許可されていません" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "リモートURLからの画像ダウンロードに失敗しました" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "親ビルド" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "バリアントを含む" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "バリアントを含む" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "バリアントを含む" msgid "Part" msgstr "パーツ" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "カテゴリ" @@ -739,16 +688,16 @@ msgstr "終了後" msgid "Build must be cancelled before it can be deleted" msgstr "削除するには、ビルドをキャンセルする必要があります。" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "消耗品" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "オプション" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "アセンブリ" @@ -756,7 +705,7 @@ msgstr "アセンブリ" msgid "Tracked" msgstr "追跡" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "テスト可能" @@ -768,7 +717,7 @@ msgstr "受注残高" msgid "Allocated" msgstr "割り当てられた" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "利用可能" msgid "Build Order" msgstr "組立注文" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "組立注文" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "ビルド・オーダー・リファレンス" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "セールス・オーダー・リファレンス" msgid "SalesOrder to which this build is allocated" msgstr "このビルドが割り当てられる SalesOrder" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "ソース・ロケーション" @@ -887,17 +836,17 @@ msgstr "組立状況" msgid "Build status code" msgstr "ビルドステータスコード" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "バッチコード" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "このビルド出力のバッチコード" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "作成日時" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "このビルドオーダーを発行したユーザー" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "責任" @@ -947,7 +896,7 @@ msgstr "このビルドオーダーを担当するユーザーまたはグルー msgid "External Link" msgstr "外部リンク" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "外部 サイト へのリンク" @@ -982,7 +931,7 @@ msgstr "ビルドオーダー{build}が完了しました" msgid "A build order has been completed" msgstr "建設発注が完了しました" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "追跡可能な部品については、シリアル番号の提示が必要です。" @@ -998,18 +947,18 @@ msgstr "ビルド出力はすでに完了しています" msgid "Build output does not match Build Order" msgstr "ビルド出力がビルド順序と一致しません" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "数量はゼロより大きくなければなりません" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "数量が出力数量を上回ることはできません" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "ビルド出力 {serial} は、必要なすべてのテストに合格していません。" @@ -1022,11 +971,11 @@ msgstr "ビルドオーダーラインアイテム" msgid "Build object" msgstr "ビルドオブジェクト" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "シリアル在庫の場合、数量は1でなければなりません msgid "Selected stock item does not match BOM line" msgstr "選択された在庫品目が部品表に一致しません。" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "在庫商品" @@ -1094,366 +1043,366 @@ msgstr "インストール" msgid "Destination stock item" msgstr "仕向け地在庫品" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "ビルドレベル" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "部品名" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "プロジェクトコードラベル" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "チャイルドビルドの作成" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "子製造オーダーの自動生成" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "ビルド出力" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "ビルド出力が親ビルドと一致しません" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "出力部分が BuildOrder 部分と一致しません。" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "このビルド出力はすでに完了しています" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "このビルド出力は完全に割り当てられていません" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "ビルド出力の数量を入力" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "追跡可能な部品に必要な整数個数" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "部品表には追跡可能な部品が含まれるため、必要な数量は整数" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "シリアル番号" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "ビルド出力のためのシリアル番号の入力" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "場所" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "ビルド出力のストック位置" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "シリアル番号の自動割り当て" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "シリアル番号が一致する必要なアイテムを自動的に割り当て" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "以下のシリアル番号は既に存在するか、無効です。" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "ビルド出力のリストを提供する必要があります。" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "スクラップされたアウトプットの在庫場所" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "廃棄割り当て" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "廃棄されたアウトプットに割り当てられた在庫の破棄" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "ビルドアウトプットを廃棄する理由" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "完成した建造物のアウトプットの場所" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "ステータス" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "不完全割当の受入れ" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "在庫が完全に割り当てられていない場合は、出力を完了します。" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "割当在庫の消費" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "このビルドに割り当て済みのストックを消費します。" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "不完全な出力の削除" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "完了していないビルド出力を削除します。" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "不可" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "このビルド・オーダーで消費されるものとして受け入れます。" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "このビルドオーダーを完了する前に割り当てを解除します。" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "総合在庫" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "製造オーダーに割り当てられた余分な在庫品をどのように処理しますか?" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "一部の在庫品目は全体的に配分されています。" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "未割り当ての受け入れ" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "在庫アイテムがこのビルド・オーダーに完全に割り当てられていないことを受け入れます。" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "必要在庫の配分が完了していません" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "インコンプリートの受け入れ" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "必要な数のビルドアウトプットが完了していないことを受け入れます。" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "必要な構築数量が完了していません" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "ビルド・オーダーには未完成の子ビルド・オーダーがあります。" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "受注生産状態であること" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "ビルド・オーダーの出力が不完全" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "組立ライン" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "ビルド出力" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "ビルド出力は同じビルド" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "ビルドラインアイテム" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.partは、ビルドオーダーと同じパーツを指す必要があります。" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "在庫があること" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "使用可能数量({q})を超過" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "追跡部品の割り当てには、ビルド出力を指定する必要があります。" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "追跡されていない部品の割り当てでは、ビルド出力を指定できません。" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "割り当て項目の提供" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "部品を調達する在庫場所(任意の場所から調達する場合は空白にしてください。)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "場所を除く" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "この選択された場所から在庫商品を除外" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "交換可能ストック" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "複数の拠点にある在庫品を交換可能" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "代替ストック" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "代替部品の割り当て" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "オプション" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "オプションのBOMアイテムをビルドオーダーに割り当てます。" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "自動割り当てタスクの開始に失敗しました" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "BOMリファレンス" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "BOMパーツID" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "部品表 部品名" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "サプライヤー" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "割当数量" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "ビルドリファレンス" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "部品分類名" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "追跡可能" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "継承" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "バリアントを許可" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "BOMアイテム" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "割当株式" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "注文中" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "生産中" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "外部在庫" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "在庫状況" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "利用可能な代替ストック" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "在庫状況" @@ -1479,7 +1428,7 @@ msgstr "キャンセル済" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "完了" @@ -1583,10 +1532,10 @@ msgstr "キー文字列は一意でなければなりません。" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "ユーザー" @@ -1594,7 +1543,7 @@ msgstr "ユーザー" msgid "Price break quantity" msgstr "価格破壊数量" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "価格" @@ -1619,7 +1568,7 @@ msgstr "このウェブフックの名前" msgid "Is this webhook active" msgstr "このウェブフックはアクティブですか" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "トークン" @@ -1683,14 +1632,14 @@ msgstr "このメッセージに関する作業は終わったのですか?" msgid "Id" msgstr "Id" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "タイトル" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "リンク" @@ -1715,11 +1664,10 @@ msgstr "既読" msgid "Was this news item read?" msgstr "このニュースは読まれましたか?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "画像" @@ -1767,7 +1715,7 @@ msgstr "定義" msgid "Unit definition" msgstr "ユニットの定義" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "添付ファイル" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "ビジネスロジックでこのカスタムステートに等しいステート論理キー" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "値" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "都道府県名" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "ラベル" @@ -1866,7 +1814,7 @@ msgstr "色" msgid "Color that will be displayed in the frontend" msgstr "フロントエンドに表示される色" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "モデル" @@ -1906,7 +1854,7 @@ msgstr "論理キーは、参照ステータスの論理キーに含まれてい msgid "Name must be different from the names of the reference status" msgstr "リファレンス・ステータスの名前とは異なっていなければならない。" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "セレクションリスト" @@ -1922,7 +1870,7 @@ msgstr "選択リストの名前" msgid "Description of the selection list" msgstr "選択リストの説明" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "ロック中" @@ -2006,7 +1954,7 @@ msgstr "この選択リストはアクティブですか?" msgid "Barcode Scan" msgstr "バーコードスキャン" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "データ" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "バーコードスキャンによるレスポンスデータ" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "結果" @@ -2165,1065 +2113,1081 @@ msgstr "このモデルの添付ファイルを作成または編集する権限 msgid "Selection list is locked" msgstr "選択リストがロックされています" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "グループなし" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "サイトのURLが設定によってロックされています" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "再起動が必要" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "サーバーの再起動を必要とする設定が変更されました。" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "保留中の移行" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "保留中のデータベース移行数" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "サーバーインスタンス名" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "サーバーインスタンスの文字列記述子" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "インスタンス名を使用" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "タイトルバーにインスタンス名を使用" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "about`を表示する制限" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "スーパーユーザーにのみ `about` モーダルを表示します。" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "会社名" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "社内社名" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "ベース URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "サーバーインスタンスのベースURL" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "デフォルトの通貨" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "価格計算のベース通貨を選択" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "対応通貨" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "対応通貨コード一覧" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "通貨の更新間隔" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "為替レートの更新頻度 (ゼロに設定すると無効になります)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "日" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "通貨更新プラグイン" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "通貨更新プラグイン" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "URLからダウンロード" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "外部URLからの画像ダウンロードを許可する" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "ダウンロードサイズ制限" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "外部URL画像の最大サイズ" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "URLからのダウンロードに使用されるユーザーエージェント" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "外部URLから画像やファイルをダウンロードする際に使用するユーザーエージェントを上書きすることができます。" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "厳格なURLバリデーション" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "URL検証時にスキーマ指定を要求" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "更新チェック間隔" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "アップデートをチェックする頻度 (ゼロに設定すると無効になります)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "自動バックアップ" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "データベースとメディアファイルの自動バックアップ" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "自動バックアップ間隔" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "自動バックアップイベント間の日数を指定" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "タスク削除間隔" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "バックグラウンドタスクの結果は、指定した日数後に削除されます。" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "エラーログ削除間隔" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "エラーログは指定した日数後に削除されます。" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "通知削除間隔" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "ユーザー通知は指定された日数後に削除されます。" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "バーコードサポート" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "ウェブインターフェイスでバーコードスキャナのサポートを有効にします。" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "店舗バーコード結果" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "バーコードスキャン結果をデータベースに保存" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "バーコードスキャン最大カウント" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "バーコードスキャン結果の最大保存数" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "バーコード入力遅延" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "バーコード入力処理遅延時間" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "バーコードウェブカメラサポート" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "ブラウザのウェブカメラでバーコードのスキャンが可能" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "バーコード表示データ" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "バーコードデータをテキストとしてブラウザに表示" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "バーコード生成プラグイン" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "内部バーコードデータ生成に使用するプラグイン" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "部品改訂" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "パートのリビジョンフィールドを有効にします。" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "アセンブリ改訂のみ" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "組立部品のみ修正可能" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "アセンブリからの削除を許可" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "アセンブリで使用されている部品の削除を許可します。" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN 正規表現" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "部分IPNにマッチする正規表現パターン" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "IPNの重複を許可" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "複数のパートが同じIPNを共有できるようにします。" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "IPNの編集を許可" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "部品編集中にIPN値の変更を許可" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "部品表データのコピー" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "部品複製時にBOMデータをデフォルトでコピー" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "部品パラメータデータのコピー" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "部品複製時にデフォルトでパラメータデータをコピー" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "コピー部品テストデータ" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "部品複製時にテストデータをデフォルトでコピー" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "カテゴリー・パラメーター・テンプレートのコピー" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "部品作成時のカテゴリー・パラメーター・テンプレートのコピー" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "テンプレート" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "パーツはデフォルトのテンプレートです" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "コンポーネント" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "パーツはデフォルトでサブコンポーネントとして使用できます" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "購入可能" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "販売可能" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "パーツはデフォルトで販売可能です" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "パーツはデフォルトで追跡可能です" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "バーチャル" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "パーツはデフォルトでバーチャル" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "ビューにインポートを表示" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "一部のパーツビューにインポートウィザードを表示" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "関連部品を表示" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "部品の関連部品を表示" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "初期在庫データ" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "新規部品追加時に初期在庫を作成可能" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "サプライヤー初期データ" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "新しい部品を追加する際に、最初のサプライヤーデータを作成できるようにします。" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "部品名表示形式" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "部品名の表示形式" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "パーツカテゴリー デフォルトアイコン" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "パートカテゴリのデフォルトアイコン(空はアイコンがないことを意味します)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "パラメータ単位の強制" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "単位が指定されている場合、パラメータ値は指定された単位に一致する必要があります。" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "価格の最小桁数" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "価格データのレンダリング時に表示する最小小数点以下の桁数" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "価格の小数点以下の桁数" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "価格データのレンダリング時に表示する小数点以下の桁数の最大値" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "サプライヤー価格の利用" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "全体的な価格計算にサプライヤーの価格破壊を含めること" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "購入履歴の上書き" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "過去の発注価格がサプライヤーの価格変動を上書き" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "ストックアイテム価格を使用" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "手動入力された在庫データから価格計算を行います。" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "在庫商品の価格設定年齢" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "この日数より古い在庫品を価格計算から除外します。" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "バリアント価格を使用" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "全体的な価格計算にバリアント価格を含む" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "アクティブバリアントのみ" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "バリアント価格の計算には、アクティブなバリアントパーツのみを使用します。" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "価格の再構築間隔" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "部品価格が自動的に更新されるまでの日数" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "社内価格" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "部品の内部価格の有効化" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "内部価格オーバーライド" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "利用可能な場合、内部価格は価格帯の計算より優先されます。" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "ラベル印刷の有効化" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "ウェブインターフェースからラベル印刷を有効にします。" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "ラベル画像DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "ラベル印刷プラグインに供給する画像ファイルを生成する際のDPI解像度" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "レポートの有効化" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "レポートの作成" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "デバッグモード" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "デバッグモードでのレポート生成(HTML出力)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "ログレポートエラー" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "レポート生成時に発生するエラーのログ" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "ページサイズ" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "PDFレポートのデフォルトのページサイズ" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "世界的にユニークな連載" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "在庫品のシリアル番号はグローバルに一意でなければなりません。" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "シリアル番号を自動入力" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "フォームのシリアル番号自動入力" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "枯渇在庫の削除" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "ストックアイテムが枯渇した場合のデフォルトの動作を決定します。" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "バッチコードテンプレート" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "ストックアイテムのデフォルトバッチコード生成用テンプレート" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "有効期限" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "在庫期限切れ機能の有効化" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "期限切れ株式の売却" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "期限切れ株式の売却を許可" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "在庫切れ時間" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "在庫品が期限切れとみなされるまでの日数" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "賞味期限切れ在庫の処理" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "期限切れの在庫を使用した建物の建築を許可" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "株式所有権" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "ストックロケーションとアイテムの所有権管理" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "在庫場所 デフォルトアイコン" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "在庫場所のデフォルトアイコン(空はアイコンがないことを意味します。)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "インストール済みストックアイテムの表示" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "ストックテーブルにインストールされたストックアイテムを表示" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "アイテム取り付けの際はBOMをチェック" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "親部品のBOMには、インストールされたストックアイテムが存在する必要があります。" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "在庫切れの転送を許可" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "在庫のないストックアイテムをストックロケーション間で移動可能" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "ビルド・オーダー参照パターン" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Build Order参照フィールドの生成に必要なパターン" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "責任ある所有者を要求" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "各注文には、責任ある所有者を指定する必要があります。" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "アクティブパートが必要" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "非稼動部品の製造オーダー作成を防止" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "ロックされた部分を要求" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "ロックされていない部品の製造オーダー作成を防止" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "有効なBOMが必要" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "BOMが検証されない限り、製造オーダーが作成されないようにします。" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "クローズド・チャイルド・オーダー" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "すべてのチャイルドオーダーが終了するまで、ビルドオーダーの完了を防止します。" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "テストがパスするまでブロック" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "必要なテストがすべて合格するまで、ビルド出力が完了しないようにします。" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "返品注文の有効化" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "ユーザーインターフェイスで返品注文機能を有効にします。" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "リターンオーダー参照パターン" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "返品注文参照フィールドの生成に必要なパターン" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "完了した返品注文の編集" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "注文完了後の返品注文の編集が可能" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "販売注文参照パターン" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "販売注文参照フィールドの生成に必要なパターン" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "販売注文のデフォルト出荷" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "販売注文でデフォルト出荷を作成可能" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "完了した販売注文の編集" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "出荷または完了後の販売注文の編集を許可します。" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "出荷された注文を完了としてマーク" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "出荷済みと表示された販売注文は、「出荷済み」ステータスを回避して自動的に完了します。" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "発注書参照パターン" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "発注書参照フィールドの生成に必要なパターン" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "完了した発注書の編集" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "出荷後または完了後の発注書の編集が可能" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "自動発注" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "すべての品目を受領した時点で、発注書を完了として自動的にマーク" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "パスワード忘れ" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "ログインページでのパスワード忘れ防止機能の有効化" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "登録の有効化" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "ログインページでユーザーの自己登録を可能にします。" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "SSOの有効化" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "ログインページでSSOを有効化" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "SSO登録の有効化" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "ログインページでSSOによるユーザーの自己登録を可能にします。" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "SSOグループ同期の有効化" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "InvenTreeグループとIdPが提供するグループの同期を有効にします。" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "SSOグループキー" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "IdP が提供する groups claim 属性の名前。" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "SSOグループマップ" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "SSOグループからローカルのInvenTreeグループへのマッピング。ローカル・グループが存在しない場合は、作成されます。" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "SSO外のグループを削除" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "ユーザーに割り当てられたグループがIdPによってバックエンドされていない場合に削除するかどうか。この設定を無効にすると、セキュリティ上の問題が発生する可能性があります。" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "メールアドレスは必須です" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "サインアップ時にメールの入力を要求" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "SSOユーザーの自動入力" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "SSOアカウントデータからユーザー詳細を自動入力" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "メール2回" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "サインアップの際、ユーザーに2度メールを尋ねます。" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "パスワード2回" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "サインアップ時にパスワードを2回要求" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "許可ドメイン" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "特定のドメイン(@で始まるカンマ区切り)へのサインアップを制限します。" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "登録時のグループ" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "新規ユーザ登録時に割り当てられるグループ。SSOグループ同期が有効な場合、このグループはIdPからグループを割り当てられない場合にのみ設定されます。" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "MFAの実施" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "ユーザーは多要素セキュリティを使用する必要があります。" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "起動時にプラグインをチェック" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "起動時にすべてのプラグインがインストールされていることを確認 - コンテナ環境では有効にします。" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "プラグインのアップデートの確認" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "インストールされているプラグインのアップデートを定期的にチェックします。" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "URL統合の有効化" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "プラグインがURLルートを追加できるようにします" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "ナビゲーション統合の有効化" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "プラグインをナビゲーションに統合可能" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "アプリとの統合" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "プラグインを有効にしてアプリを追加" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "スケジュール統合の有効化" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "スケジュールタスクを実行するプラグインの有効化" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "イベント統合の有効化" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "プラグインが内部イベントに応答できるようにします。" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "インターフェース統合の有効化" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "プラグインがユーザー・インターフェースに統合できるようにします。" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "ストックテイク機能" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "在庫レベルを記録し、在庫価値を計算するための棚卸機能を有効にします。" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "外部ロケーションを除く" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "棚卸計算から外部ロケーションの在庫品を除外" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "自動引取期間" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "自動棚卸記録間隔日数(ゼロに設定すると無効になります。)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "レポート削除間隔" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "ストックテイクレポートは、指定された日数が経過すると削除されます。" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "ユーザーのフルネームを表示" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "ユーザー名の代わりにフルネームを表示" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "テストステーションデータの有効化" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "テスト結果のテストステーションデータ収集の有効化" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "アップロード時にテンプレートを作成" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "既存のテンプレートに一致しないテスト データをアップロードする場合、新しいテスト テンプレートを作成します。" @@ -3544,13 +3508,13 @@ msgstr "内部はアクティブ" msgid "Supplier is Active" msgstr "サプライヤーの活動" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "製造元" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "会社名" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "住所情報へのリンク(外部)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "メーカー・パーツ" @@ -3744,8 +3708,8 @@ msgstr "部品を選択" msgid "Select manufacturer" msgstr "メーカー選択" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "MPN" @@ -3773,7 +3737,7 @@ msgstr "パラメータ名" msgid "Parameter value" msgstr "パラメータ値" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "単位" @@ -3793,11 +3757,11 @@ msgstr "パック単位はゼロより大きくなければなりません。" msgid "Linked manufacturer part must reference the same base part" msgstr "リンクされたメーカー部品は、同じベース部品を参照する必要があります。" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "仕入先" @@ -3805,7 +3769,7 @@ msgstr "仕入先" msgid "Select supplier" msgstr "サプライヤーを選択" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "サプライヤー在庫管理ユニット" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "サプライヤーの部品説明" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "サプライヤーの部品説明" msgid "Note" msgstr "備考" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "基本料金" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "ミニマムチャージ(例:仕入れ手数料)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "パッケージング" @@ -3861,7 +3825,7 @@ msgstr "パック数量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "1パックに供給される総量。単品の場合は空のままにしてください。" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "複数" @@ -3885,15 +3849,15 @@ msgstr "アベイラビリティ・データの最終更新日" msgid "Supplier Price Break" msgstr "サプライヤーの価格破壊" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "このサプライヤーで使用されるデフォルト通貨" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "会社名" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "在庫あり" @@ -3905,7 +3869,7 @@ msgstr "カスタムステータスキー" msgid "Additional status information for this item" msgstr "この項目の追加ステータス情報" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "キー" @@ -3933,6 +3897,10 @@ msgstr "無効なステータスコード" msgid "Invalid export format" msgstr "無効なエクスポート形式" +#: importer/models.py:64 +msgid "Data File" +msgstr "データファイル" + #: importer/models.py:65 msgid "Data file to import" msgstr "インポートするデータファイル" @@ -4009,7 +3977,7 @@ msgstr "元の行データ" msgid "Errors" msgstr "エラー" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "有効" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "数量は正の数でなければなりません。" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "顧客" @@ -4835,11 +4803,11 @@ msgstr "アイテムのマージ" msgid "Merge items with the same part, destination and target date into one line item" msgstr "同じ品目、同じ仕向け地、同じ日付の品目を1つの品目に統合します。" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "内部部品番号" @@ -4879,7 +4847,7 @@ msgstr "受取商品の配送先選択" msgid "Enter batch code for incoming stock items" msgstr "入荷在庫品のバッチコード入力" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "有効期限" @@ -4979,7 +4947,7 @@ msgstr "以下のシリアル番号はご利用いただけません。" msgid "Return order line item" msgstr "返品注文項目" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "在庫商品ステータスコード" @@ -5061,7 +5029,7 @@ msgstr "スター付き" msgid "Filter by starred categories" msgstr "星の数で絞り込む" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "深さ" @@ -5069,7 +5037,7 @@ msgstr "深さ" msgid "Filter by category depth" msgstr "カテゴリの深さでフィルタリング" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "最多メンバーレベル" @@ -5077,7 +5045,7 @@ msgstr "最多メンバーレベル" msgid "Filter by top-level categories" msgstr "トップレベルカテゴリーによるフィルタリング" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "カスケード表示" @@ -5105,1250 +5073,1190 @@ msgstr "指定したカテゴリの下にあるサブカテゴリを除外しま msgid "Has Results" msgstr "実績あり" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "発注書" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "販売注文" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "受注生産在庫" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "受注生産に必要な在庫" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "部品表全体の検証" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "このオプションを選択する必要があります。" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "改訂版" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "改定あり" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "BOM有効" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "組み立て部分はテスト可能" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "コンポーネント部分はテスト可能" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "用途" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "パーツカテゴリ" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "パーツカテゴリ" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "デフォルトの場所" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "このカテゴリの部品のデフォルトの場所" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "構造に関するパターン" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "部品は構造カテゴリーに直接割り当てることはできませんが、子カテゴリーに割り当てることはできます。" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "デフォルトキーワード" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "このカテゴリの部品のデフォルトキーワード" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "アイコン" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "アイコン (オプション)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "いくつかの部品がすでに割り当てられているため、この部品カテゴリを構造化することはできません!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "パーツ" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "この部分はロックされているため削除できません" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "このパートはまだアクティブなので削除できません。" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "この部品はアセンブリで使用されているため、削除できません。" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "親部分の選択が無効" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "パート'{self}'は'{parent}'(再帰的)のBOMでは使用できません。" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "パート'{parent}'は'{self}'のBOMで使用(再帰的)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPNは正規表現パターン{pattern}に一致しなければなりません。" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "パートはそれ自体の改訂にはなりえません" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "すでにリビジョンとなっている部分のリビジョンを作成することはできません。" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "リビジョンコードの指定が必要" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "修正が許されるのは組立部品のみ" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "テンプレート部品のリビジョンを作成できません" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "親部品は同じテンプレートを指す必要があります。" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "このシリアル番号の在庫品はすでに存在します" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "パート設定でIPNの重複が許可されていません。" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "重複する部品リビジョンが既に存在します。" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "この名前、IPN、リビジョンを持つ部品は既に存在します。" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "部品を構造部品のカテゴリーに割り当てることはできません!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "部品名" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "テンプレート" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "この部品はテンプレート部品ですか?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "この部品は他の部品の変形ですか?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "変種" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "部品の説明(オプション)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "キーワード" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "検索結果での視認性を向上させる部分キーワード" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "パーツカテゴリ" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "即時支払通知" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "部品のリビジョンまたはバージョン番号" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "リビジョン" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "この部品は他の部品の改訂版ですか?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "改訂版" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "この商品は通常どこに保管されていますか?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "デフォルト・サプライヤー" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "サプライヤーのデフォルト部品" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "デフォルトの有効期限" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "この部品の在庫品の有効期限(日単位" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "最小在庫" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "最低許容在庫量" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "この部品の単位" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "この部品は他の部品から作ることができますか?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "この部品を使って他の部品を作ることはできますか?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "このパーツはユニークなアイテムの追跡が可能ですか?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "この部品にテスト結果を記録することはできますか?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "この部品は外部のサプライヤーから購入できますか?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "この部品は顧客に販売できますか?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "この部分はアクティブですか?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "ロックされた部分は編集できません" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "これは、ソフトウェア製品やライセンスなどの仮想部品ですか?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "BOMチェックサム" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "保存されたBOMのチェックサム" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "BOMチェック済み" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "BOMチェック日" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "作成ユーザー" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "この部分の責任者" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "最後のストックテイク" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "複数販売" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "価格計算のキャッシュに使用される通貨" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "最小BOMコスト" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "構成部品の最低コスト" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "最大BOMコスト" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "構成部品の最大コスト" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "最低購入価格" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "過去の最低購入価額" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "最大購入費用" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "過去の最高購入価格" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "最低社内価格" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "社内価格ブレークに基づく最低コスト" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "社内最高価格" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "社内価格ブレークに基づく最大コスト" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "最低供給価格" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "外部サプライヤーからの部品の最低価格" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "サプライヤー最高価格" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "外部サプライヤーからの部品の最高価格" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "最小バリアントコスト" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "バリアントパーツの最小コストの計算" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "最大バリアントコスト" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "バリアント部品の最大コストの計算" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "最低料金" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "最低コストのオーバーライド" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "最大コスト" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "最大コストのオーバーライド" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "総合的な最小コストの計算" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "総合最大コストの計算" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "最低販売価格" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "価格破壊に基づく最低販売価格" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "最高販売価格" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "価格破壊に基づく最高販売価格" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "最低販売価格" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "過去の最低売却価格" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "最大販売価格" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "過去の最高売却価格" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "ストックテイク用部品" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "個数" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "棚卸時の個別在庫数" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "ストックテイク時の在庫可能量" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日付" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "ストックテイク実施日" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "その他の注意事項" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "このストックテイクを実施したユーザー" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "最低在庫コスト" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "手元在庫の最低見積原価" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "最大在庫コスト" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "手元在庫の最大見積原価" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "レポート" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "ストックテイクレポートファイル(社内で作成)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "部品数" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "ストックテーク対象部品数" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "このストックテイク・レポートを依頼したユーザー" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "パーツセール価格" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "部品試験テンプレート" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "無効なテンプレート名 - 英数字を1文字以上含む必要があります。" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "選択肢はユニークでなければなりません" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "テストテンプレートは、テスト可能な部分に対してのみ作成できます。" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "同じキーを持つテスト・テンプレートがパートに既に存在します。" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "試験名" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "テストの名前を入力します。" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "テストキー" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "テストの簡易キー" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "試験内容" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "このテストの説明を入力してください。" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "有効" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "このテストは有効ですか?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "必須" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "このテストは合格するために必要ですか?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "価値が必要" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "このテストは、テスト結果を追加する際に値を必要としますか?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "アタッチメントが必要" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "この試験では、試験結果を追加する際にファイルの添付が必要ですか。" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "選択肢" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "このテストで有効な選択肢(カンマ区切り)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "部品パラメータテンプレート" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "チェックボックスのパラメータに単位を指定することはできません。" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "チェックボックスパラメータに選択肢を持たせることはできません。" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "パラメータ・テンプレート名は一意でなければなりません。" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "パラメータ名" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "このパラメータの物理単位" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "パラメータの説明" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "チェックボックス" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "このパラメータはチェックボックスですか?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "このパラメータの有効な選択肢(カンマ区切り)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "このパラメータの選択リスト" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "部品パラメータ" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "パラメータは変更できません。" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "パラメータ値の選択が無効" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "親部分" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "パラメータテンプレート" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "パラメータ値" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "部品分類パラメータテンプレート" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "初期値" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "パラメータのデフォルト値" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "部品IDまたは部品名" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "部品ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "一意の部品ID値" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "パートIPN" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "パートIPN値" - -#: part/models.py:4130 -msgid "Level" -msgstr "レベル" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "BOMレベル" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "BOMアイテムは変更できません - アセンブリがロックされています。" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "BOM アイテムは変更できません - バリアントアセンブリがロックされています。" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "親部品を選択" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "サブパート" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "BOMで使用する部品を選択" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "このBOMアイテムのBOM数量" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "この部品表はオプションです。" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "このBOMアイテムは消耗品です。" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "超過分" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "推定建設廃棄物量(絶対値またはパーセンテージ)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "BOMアイテムリファレンス" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "BOMアイテムノート" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "チェックサムi" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "BOMラインのチェックサム" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "検証済み" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "このBOMアイテムは検証済みです" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "継承" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "この BOM アイテムは、バリアントパーツの BOM に継承されます。" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "このBOMアイテムには、バリアントパーツのストックアイテムを使用できます。" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "数量は追跡可能な部品の場合、整数値でなければなりません。" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "サブパーツの指定が必要" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "BOMアイテム代替" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "代用部品はマスター部品と同じにすることはできません。" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "親BOMアイテム" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "代用部品" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "パート #1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "パート #2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "関連部品を選択" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "この関係について" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "部品とそれ自身との間に部品関係を作ることはできません。" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "重複する関係が既に存在します。" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "親カテゴリ" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "親部品カテゴリー" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "サブカテゴリ" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "結果" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "このテンプレートに対して記録された結果の数" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "この在庫商品の購入通貨" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "投機的数量" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "モデルID" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "このテンプレートを使用する部品の数" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "部品選択なし" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "カテゴリを選択" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "オリジナルパート" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "複製する元の部品を選択" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "コピー画像" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "元の部分から画像をコピー" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "コピーBOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "元の部品から部品表をコピー" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "コピーパラメータ" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "元の部品からパラメータデータをコピー" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "コピーノート" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "元のパートからメモをコピー" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "初期在庫量" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "この部品の初期在庫数量を指定します。数量が0の場合、在庫は追加されません。" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "初期在庫場所" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "この部品の初期在庫場所を指定してください。" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "サプライヤーを選択してください。" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "メーカーを選択してください。" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "メーカー品番" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "選択された企業は有効なサプライヤーではありません。" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "選択された会社は有効な製造業者ではありません。" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "このMPNに一致するメーカー部品はすでに存在します。" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "このSKUに一致するサプライヤー部品は既に存在します。" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "カテゴリ名" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "建物" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "在庫商品" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "リビジョン" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "仕入先" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "総在庫" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "未割当株式" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "バリアントストック" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "重複部分" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "別のパートから初期データをコピー" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "初期在庫" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "初期在庫数で部品を作成" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "サプライヤー情報" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "この部品の初期サプライヤー情報を追加します。" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "コピーカテゴリパラメータ" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "選択したパーツカテゴリーからパラメータテンプレートをコピー" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "既存イメージ" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "既存の部品画像のファイル名" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "画像ファイルが存在しません" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "ストックテイクレポートを特定の部品とバリアント部品に限定します。" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "ストックテイクレポートを特定の部品カテゴリーとその子カテゴリーに限定します。" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "ストックテイクレポートを特定のストックロケーションと子ロケーションに限定" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "外部在庫を除く" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "外部ロケーションの在庫品を除く" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "レポートを生成" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "計算されたストックテイクデータを含むレポートファイルの作成" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "更新部品" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "計算されたストックテイクデータで指定部品を更新" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "在庫管理機能が有効になっていません" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "バックグラウンドワーカーのチェックに失敗しました" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "最小価格" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "最低価格の計算値の上書き" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "最低価格通貨" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "最大価格" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "最高価格の計算値を上書き" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "最高価格通貨" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "更新" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "この部品の価格を更新" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "提供された通貨から{default_currency}に変換できませんでした。" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "最低価格は最高価格を超えてはなりません。" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "最高価格は最低価格を下回ってはなりません。" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "親アセンブリを選択" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "構成部品の選択" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "ビルド" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "BOMをコピーする部品を選択します。" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "既存データの削除" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "コピー前に既存のBOMアイテムを削除" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "インクルード継承" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "テンプレート化された部品から継承されたBOM項目を含めます。" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "無効な行をスキップ" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "無効な行をスキップするには、このオプションを有効にします。" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "コピー代用部品" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "BOMアイテムの重複時に代替部品をコピー" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "既存のBOMをクリア" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "アップロード前に既存のBOMアイテムを削除" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "部品欄の指定なし" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "複数の適合部品が見つかりました" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "適合部品が見つかりません" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "部品はコンポーネントとして指定されていません。" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "数量記載なし" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "無効な数量" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "少なくとも1つのBOMアイテムが必要です" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "部品ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "バーコードデータが見つかりません" msgid "Match found for barcode data" msgstr "バーコードデータとの一致が確認されました。" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "モデルはサポートされていません" @@ -6504,75 +6412,75 @@ msgstr "受領済み発注書項目" msgid "Failed to receive line item" msgstr "ラインアイテムの受信に失敗" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "スキャンされたバーコードデータ" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "バーコードを生成するモデル名" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "バーコードを生成するモデルオブジェクトの主キー" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "発注書" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "発注は保留されていません" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "商品を受け取るサプライヤー" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "商品を受け取るPurchaseOrder" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "発注が行われていません" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "商品を受け取る場所" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "構造上の位置を選択できません" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "物品を受け取るための購買発注項目" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "在庫アイテムを自動的に発注書に割り当てる" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "セールスオーダー" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "販売注文は保留中ではありません" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "商品を割り当てる販売注文項目" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "商品を割り当てる販売注文の出荷" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "出荷済み" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "配分数量" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "バーコードのネイティブサポートを提供" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "短いバーコードプレフィックス" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "複数のInvenTreeインスタンスがある環境で便利です。" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree 通知" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "統合された発信通知方法" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Eメール通知を有効にします。" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "イベント通知のメール送信を許可" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "スラック通知を有効化" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "イベント通知のためのslackチャンネルメッセージの送信を許可します。" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack受信ウェブフックURL" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "slack チャンネルにメッセージを送信する際に使用する URL。" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "リンクを開く" @@ -6936,7 +6844,7 @@ msgstr "組み込みプラグイン" msgid "Package Plugin" msgstr "パッケージプラグイン" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "プラグイン" @@ -7155,7 +7063,7 @@ msgstr "設定の削除" msgid "Delete the plugin configuration from the database" msgstr "データベースからプラグイン設定を削除します" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "アイテム" @@ -7281,67 +7189,67 @@ msgstr "高さ [mm]" msgid "Label height, specified in mm" msgstr "ラベルの高さ(mm単位)" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "処理項目数" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "レポート作成完了" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "進度" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "レポート作成の進捗状況" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "レポートテンプレート" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "出力ファイル" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "生成された出力ファイル" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "ラベル出力プラグイン" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "ラベルテンプレート" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "スニペット" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "レポートスニペットファイル" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "スニペットファイルの説明" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "資産" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "レポート資産ファイル" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "アセットファイルの説明" @@ -7493,123 +7401,123 @@ msgstr "part_image タグには Part インスタンスが必要です。" msgid "company_image tag requires a Company instance" msgstr "company_image タグには Company インスタンスが必要です。" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "場所の深さによる絞り込み" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "トップレベルのロケーションによるフィルタリング" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "フィルタリング結果にサブロケーションを含めることができます。" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "親の位置" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "親の所在地でフィルタリング" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "部品名(大文字・小文字を区別しません)" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "パート名に含まれるもの(大文字・小文字を区別しません)" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "部品名(正規表現)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "パートIPN(大文字と小文字を区別しません)" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "パートIPNに含まれるもの(大文字と小文字は区別されません)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "パートIPN(正規表現)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "最小在庫" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "最大在庫" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "ステータスコード" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "外部ロケーション" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "ビルド・オーダーで消費" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "その他在庫品に装着" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "パートツリー" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "更新前" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "更新後" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "ストックテイク前" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "ストックテイク後" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "有効期限" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "有効期限" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "期限失効" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "数量が必要です" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "有効な部品を供給する必要があります。" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "指定されたサプライヤの部品が存在しません。" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "サプライヤー部品にはパックサイズが定義されていますが、use_pack_sizeフラグが設定されていません。" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "追跡不可能な部品については、シリアル番号は提供できません。" @@ -7629,7 +7537,7 @@ msgstr "アイコンが設定されていないすべての場所のデフォル msgid "Stock Location" msgstr "ストックロケーション" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "在庫場所" @@ -7718,7 +7626,7 @@ msgstr "この在庫品に一致するサプライヤー部品を選択してく msgid "Where is this stock item located?" msgstr "この在庫品はどこにありますか?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "この在庫品は以下の梱包で保管されています。" @@ -7734,7 +7642,7 @@ msgstr "このアイテムは他のアイテムにインストールされてい msgid "Serial number for this item" msgstr "この商品のシリアル番号" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "このストックアイテムのバッチコード" @@ -7790,136 +7698,136 @@ msgstr "購入時の単品購入価格" msgid "Converted to part" msgstr "パートに変換" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "部品が追跡可能に設定されていません" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "数量は整数でなければなりません。" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "数量は在庫数 ({self.quantity}) を超えてはなりません。" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "シリアル番号はリストとして提供されなければなりません" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "数量がシリアル番号と一致しません" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "テストテンプレートが存在しません" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "在庫商品が販売注文に割り当てられました" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "ストックアイテムが他のアイテムに装着されている場合" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "在庫商品には他の商品が含まれています。" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "在庫商品が顧客に割り当てられました" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "在庫品は現在生産中です。" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "連番在庫の統合はできません" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "在庫品の重複" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "在庫品目は同じ部品を参照してください。" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "在庫品は同じサプライヤーの部品を参照する必要があります。" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "在庫状況コードが一致していること" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "在庫がないため移動できません。" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "ストックアイテムのトラッキング" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "記入上の注意" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "在庫品テスト結果" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "このテストには値を指定する必要があります。" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "このテストには添付ファイルをアップロードする必要があります。" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "このテストでは無効な値です。" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "試験結果" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "テスト出力値" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "試験結果添付" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "テストノート" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "テストステーション" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "試験が実施された試験ステーションの識別子。" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "開始" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "テスト開始のタイムスタンプ" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "修了済み" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "テスト終了のタイムスタンプ" @@ -7995,7 +7903,7 @@ msgstr "数量はパック数です。" msgid "Supplier Part Number" msgstr "サプライヤー品番" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "期限切れ" @@ -8024,7 +7932,7 @@ msgstr "数量は在庫数 ({q}) を超えてはなりません。" msgid "Enter serial numbers for new items" msgstr "新しい商品のシリアル番号の入力" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "仕向け地" @@ -8101,79 +8009,79 @@ msgstr "ステータスを変更するストックアイテムを選択" msgid "No stock items selected" msgstr "ストックアイテムが選択されていません" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "サブロケーション" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "親株式所在地" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "パーツは販売可能でなければなりません" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "商品が販売オーダーに割り当てられています。" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "アイテムがビルドオーダーに割り当てられています。" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "在庫アイテムを割り当てるお客様" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "選択された企業は顧客ではありません" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "株式譲渡に関する注意事項" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "在庫品のリストが必要です。" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "株式併合に関する注意事項" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "不一致のサプライヤーを許可" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "異なるサプライヤの部品を持つ在庫品目をマージできるようにします。" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "不一致の状態を許可" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "異なるステータスコードを持つストックアイテムをマージすることができます。" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "少なくとも2つのストックアイテムを提供する必要があります。" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "変化なし" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "StockItem 主キー値" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "在庫がありません" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "株式取引に関する注記" @@ -8305,11 +8213,11 @@ msgstr "顧客に送信されました" msgid "Returned from customer" msgstr "顧客からの返品" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "権限がありません" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "このページを表示する権限がありません。" @@ -8317,47 +8225,39 @@ msgstr "このページを表示する権限がありません。" msgid "Authentication Failure" msgstr "認証失敗" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "InvenTreeからログアウトされました。" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "ログイン" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "お探しのページが見つかりません。" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "要求されたページは存在しません" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "サーバー側の内部エラー" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "%(inventree_title)s サーバーで内部エラーが発生しました。" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "詳細については、管理インターフェイスのエラーログを参照してください。" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "サイトはメンテナンス中です" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "このサイトは現在メンテナンス中で、まもなく再開される予定です!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTreeロゴ" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "サーバーの再起動が必要" @@ -8423,31 +8323,31 @@ msgstr "このパーツを表示するには、次のリンクをクリックし msgid "Minimum Quantity" msgstr "最小在庫" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "ユーザー" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "このグループに割り当てるユーザーを選択します" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "次のユーザーは複数のグループに所属しています。" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "個人情報" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "許可" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "重要な日付" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "トークンは失効しました" @@ -8455,55 +8355,55 @@ msgstr "トークンは失効しました" msgid "Token has expired" msgstr "トークンの有効期限が切れました" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "APIトークン" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "APIトークン" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "トークン名" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "カスタムトークン名" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "トークンの有効期限" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "最終表示" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "トークンが最後に使用された時間" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "失効" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "管理者" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "ストックテイク" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "購入注文" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "セールスオーダー" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "返品注文" diff --git a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po index 668ba3d93e..3a71664bae 100644 --- a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po index 0ba67a0561..a3d84722b6 100644 --- a/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/lt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Language: lt_LT\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po index 80668d84fb..3c488c7b5e 100644 --- a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Language: lv_LV\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API galapunkts nav atrasts" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Lietotājam nav atļaujas, lai apskatītu šo modeli" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-pasts (vēlreiz)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "E-pasta adreses apstiprinājums" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Katru reizi jāievada viena un tā pati e-pasta adrese." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Norādītā primārā e-pasta adrese nav derīga." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Norādītais e-pasta domēns nav apstiprināts." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Reģistrācija ir izslēgta." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nevarēja konvertēt {original} par {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Norādītais daudzums nav derīgs" @@ -100,14 +92,14 @@ msgstr "Ievadiet datumu" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Piezīmes" @@ -120,42 +112,42 @@ msgstr "Vērtība '{name}' neparādās vajadzīgajā formātā" msgid "Provided value does not match required pattern: " msgstr "Norādītā vērtība neatbilst nepieciešamajam formātam: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Tukša sērijas numura rinda" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Atkārtojas sērijas numurs" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Grupas diapazons {group} pārsniedz pieļaujamo daudzumu ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Netika atrasts neviens sērijas numurs" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Unikālo sērijas numuru skaitam ({len(serials)}) jāatbilst daudzumam ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Noņemiet HTML tagus no šīs vērtības" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po index 3e5ff4f7ee..225be35dcf 100644 --- a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API eindpunt niet gevonden" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Ongeldige items lijst verstrekt" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Ongeldige filters opgegeven" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "Geen items gevonden om te verwijderen" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Gebruiker heeft geen rechten om dit model te bekijken" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "Verificatie e-mail is verzonden." - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-mailadres (opnieuw)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "E-mailadres bevestiging" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Er moet hetzelfde e-mailadres ingevoerd worden." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Registratie is uitgeschakeld." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Het opgegeven primaire e-mailadres is ongeldig." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Het ingevoerde e-maildomein is niet goedgekeurd." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registratie is uitgeschakeld." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} kon niet worden omgezet naar {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveelheid ingevoerd" @@ -100,14 +92,14 @@ msgstr "Voer datum in" msgid "Invalid decimal value" msgstr "Ongeldige decimale waarde" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Opmerkingen" @@ -120,42 +112,42 @@ msgstr "Waarde '{name}' verschijnt niet in patroonformaat" msgid "Provided value does not match required pattern: " msgstr "Opgegeven waarde komt niet overeen met vereist patroon: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "Kan niet meer dan 1000 items tegelijk serienummers geven." -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Leeg serienummer" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplicaat serienummer" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Ongeldige groep: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Groepsbereik {group} overschrijdt toegestane hoeveelheid ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Geen serienummers gevonden" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Hoeveelheid van unieke serienummers ({s}) moet overeenkomen met de hoeveelheid ({q})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Verwijder HTML tags van deze waarde" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "Gegevens bevatten verboden markdown inhoud" @@ -343,11 +335,11 @@ msgstr "Chinees (vereenvoudigd)" msgid "Chinese (Traditional)" msgstr "Chinees (traditioneel)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Log in op de app" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-mail" @@ -368,247 +360,205 @@ msgstr "Plug-in metadata" msgid "JSON metadata field, for use by external plugins" msgstr "JSON metadata veld, voor gebruik door externe plugins" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Onjuist opgemaakt patroon" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Onbekende opmaaksleutel gespecificeerd" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Vereiste opmaaksleutel ontbreekt" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referentieveld mag niet leeg zijn" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referentie moet overeenkomen met verplicht patroon" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referentienummer is te groot" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Dubbele namen kunnen niet bestaan onder hetzelfde bovenliggende object" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Ongeldige keuze" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Naam" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Omschrijving" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Omschrijving (optioneel)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Pad" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown notitie (optioneel)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Streepjescode gegevens" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Streepjescode van derden" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash van Streepjescode" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Unieke hash van barcode gegevens" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Bestaande barcode gevonden" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Taak mislukt" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "Achtergrondtaak '{f}' is mislukt na {n} pogingen" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serverfout" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Selecteer valuta uit beschikbare opties" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Gebruikersnaam" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Voornaam :" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Voornaam van de gebruiker" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Achternaam" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Achternaam van de gebruiker" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "E-mailadres van de gebruiker" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Medewerkers" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Heeft deze gebruiker medewerker machtigingen" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Administrator " -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Is deze gebruiker een administrator " -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Actief" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Is dit gebruikersaccount actief" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Je bent niet bevoegd om deze gebruikersrol te wijzigen." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Alleen administrators kunnen nieuwe gebruikers aanmaken" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Je account is aangemaakt." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Gebruik de wachtwoordreset functie om in te loggen" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Welkom bij InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Ongeldige waarde" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Data bestand" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Selecteer een bestand om te uploaden" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Bestandsformaat niet ondersteund" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Bestand is te groot" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Geen kolommen gevonden in het bestand" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Geen data rijen gevonden in dit bestand" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Geen data rijen opgegeven" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Geen gegevenskolommen opgegeven" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Verplichte kolom ontbreekt: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Dubbele kolom: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Externe afbeelding" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL van extern afbeeldingsbestand" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Fout bij het downloaden van afbeelding van externe URL" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Bovenliggende Productie" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Inclusief varianten" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Inclusief varianten" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Inclusief varianten" msgid "Part" msgstr "Onderdeel" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Categorie" @@ -739,16 +688,16 @@ msgstr "Voltooid na" msgid "Build must be cancelled before it can be deleted" msgstr "Productie moet geannuleerd worden voordat het kan worden verwijderd" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Verbruiksartikelen" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Optioneel" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Samenstelling" @@ -756,7 +705,7 @@ msgstr "Samenstelling" msgid "Tracked" msgstr "Gevolgd" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testbaar" @@ -768,7 +717,7 @@ msgstr "Openstaande order" msgid "Allocated" msgstr "Toegewezen" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Beschikbaar" msgid "Build Order" msgstr "Productieorder" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Productieorders" @@ -795,7 +744,7 @@ msgstr "Bouw bestelling kan niet worden aangemaakt voor een inactief onderdeel" #: build/models.py:153 msgid "Build order cannot be created for an unlocked part" -msgstr "" +msgstr "Maken opdracht kan niet worden gemaakt voor een ontgrendeld onderdeel" #: build/models.py:165 msgid "Invalid choice for parent build" @@ -803,23 +752,23 @@ msgstr "Ongeldige keuze voor bovenliggende productie" #: build/models.py:174 order/models.py:277 msgid "Responsible user or group must be specified" -msgstr "" +msgstr "Verantwoorde gebruiker of groep moet worden opgegeven" #: build/models.py:179 msgid "Build order part cannot be changed" -msgstr "" +msgstr "Bouworder onderdeel kan niet worden gewijzigd" #: build/models.py:184 order/models.py:290 msgid "Target date must be after start date" -msgstr "" +msgstr "Doeldatum moet na startdatum zijn" #: build/models.py:250 msgid "Build Order Reference" msgstr "Productieorderreferentie" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Verkooporder Referentie" msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Bronlocatie" @@ -887,27 +836,27 @@ msgstr "Productiestatus" msgid "Build status code" msgstr "Productiestatuscode" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Batchcode" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Aanmaakdatum" #: build/models.py:356 msgid "Build start date" -msgstr "" +msgstr "Bouw start datum" #: build/models.py:357 msgid "Scheduled start date for this build order" -msgstr "" +msgstr "Geplande startdatum voor deze bestelling" #: build/models.py:363 msgid "Target completion date" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Gebruiker die de productieorder heeft gegeven" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Verantwoordelijke" @@ -947,7 +896,7 @@ msgstr "Gebruiker of groep verantwoordelijk voor deze bouwopdracht" msgid "External Link" msgstr "Externe Link" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link naar externe URL" @@ -963,7 +912,7 @@ msgstr "Prioriteit van deze bouwopdracht" #: build/models.py:418 common/models.py:87 common/models.py:101 #: order/api.py:155 order/models.py:352 msgid "Project Code" -msgstr "" +msgstr "Project code" #: build/models.py:419 msgid "Project code for this build order" @@ -971,7 +920,7 @@ msgstr "Project code voor deze build order" #: build/models.py:687 build/models.py:807 msgid "Failed to offload task to complete build allocations" -msgstr "" +msgstr "Verwijderen van taak om toewijzingen te voltooien mislukt" #: build/models.py:707 #, python-brace-format @@ -982,9 +931,9 @@ msgstr "Productieorder {build} is voltooid" msgid "A build order has been completed" msgstr "Een productieorder is voltooid" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" -msgstr "" +msgstr "Serienummers moeten worden opgegeven voor traceerbare onderdelen" #: build/models.py:994 build/models.py:1079 msgid "No build output specified" @@ -998,35 +947,35 @@ msgstr "Productie uitvoer is al voltooid" msgid "Build output does not match Build Order" msgstr "Productuitvoer komt niet overeen met de Productieorder" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Hoeveelheid moet groter zijn dan nul" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Hoeveelheid kan niet groter zijn dan aantal" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" -msgstr "" +msgstr "Build output {serial} heeft niet alle vereiste tests doorstaan" #: build/models.py:1512 msgid "Build Order Line Item" -msgstr "" +msgstr "Bouw order regel item" #: build/models.py:1536 msgid "Build object" msgstr "Bouw object" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad" msgid "Selected stock item does not match BOM line" msgstr "Geselecteerde voorraadartikelen komen niet overeen met de BOM-regel" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Voorraadartikel" @@ -1094,366 +1043,366 @@ msgstr "Installeren in" msgid "Destination stock item" msgstr "Bestemming voorraadartikel" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" -msgstr "" +msgstr "Bouw level" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Onderdeel naam" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" -msgstr "" +msgstr "Projectcode label" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" -msgstr "" +msgstr "Onderliggende builds aanmaken" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" -msgstr "" +msgstr "Automatisch onderliggende build orders genereren" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Productieuitvoer" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Productieuitvoer komt niet overeen met de bovenliggende productie" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Uitvoeronderdeel komt niet overeen met productieorderonderdeel" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Deze productieuitvoer is al voltooid" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Deze productieuitvoer is niet volledig toegewezen" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Serienummers" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Voer serienummers in voor productieuitvoeren" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Locatie" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Voorraad locatie voor project uitvoer" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Serienummers automatisch toewijzen" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Vereiste artikelen automatisch toewijzen met overeenkomende serienummers" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "De volgende serienummers bestaan al of zijn ongeldig" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Een lijst van productieuitvoeren moet worden verstrekt" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Voorraadlocatie voor geannuleerde outputs" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Toewijzingen weggooien" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Verwijder alle voorraadtoewijzingen voor geannuleerde outputs" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Reden voor annulering van bouworder(s)" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Locatie van voltooide productieuitvoeren" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Incomplete Toewijzing Accepteren" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Voltooi de uitvoer als de voorraad niet volledig is toegewezen" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Toegewezen voorraad gebruiken" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Verbruik elke voorraad die al is toegewezen aan deze build" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Verwijder Incomplete Uitvoeren" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Verwijder alle productieuitvoeren die niet zijn voltooid" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Niet toegestaan" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Accepteer zoals geconsumeerd onder deze bouwopdracht" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "De-alloceren voordat deze bouwopdracht voltooid wordt" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Overgealloceerde voorraad" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hoe wilt u omgaan met extra voorraaditems toegewezen aan de bouworder" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Sommige voorraadartikelen zijn overalloceerd" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Accepteer Niet-toegewezen" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepteer dat voorraadartikelen niet volledig zijn toegewezen aan deze productieorder" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Vereiste voorraad is niet volledig toegewezen" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Accepteer Onvolledig" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepteer dat het vereist aantal productieuitvoeren niet is voltooid" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Vereiste productiehoeveelheid is voltooid" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" -msgstr "" +msgstr "Bouw opdracht heeft open sub bouw orders" + +#: build/serializers.py:830 +msgid "Build order must be in production state" +msgstr "Bouwen moet in de productiestatus staan" #: build/serializers.py:833 -msgid "Build order must be in production state" -msgstr "" - -#: build/serializers.py:836 msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Productielijn" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Productieuitvoer" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Productieuitvoer moet naar dezelfde productie wijzen" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Bouw lijn-item" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Artikel moet op voorraad zijn" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Beschikbare hoeveelheid ({q}) overschreden" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Productieuitvoer moet worden opgegeven voor de toewijzing van gevolgde onderdelen" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Productieuitvoer kan niet worden gespecificeerd voor de toewijzing van niet gevolgde onderdelen" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Allocaties voor artikelen moeten worden opgegeven" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Voorraadlocatie waar onderdelen afkomstig zijn (laat leeg om van elke locatie te nemen)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Locatie uitsluiten" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Uitwisselbare voorraad" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Vervangende Voorraad" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Toewijzing van vervangende onderdelen toestaan" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Optionele Items" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Alloceer optionele BOM items om bestelling te bouwen" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" -msgstr "" +msgstr "Starten van automatische toewijzing taak mislukt" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" -msgstr "" +msgstr "BOM referentie" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" -msgstr "" +msgstr "BOM onderdeel ID" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" -msgstr "" +msgstr "BOM onderdeel naam" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" -msgstr "" +msgstr "Bouwen" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Leveranciersonderdeel" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Toegewezen hoeveelheid" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" -msgstr "" +msgstr "Bouw referentie" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" -msgstr "" +msgstr "Naam categorie onderdeel" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Volgbaar" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" -msgstr "" +msgstr "Overgenomen" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" -msgstr "" +msgstr "Varianten toestaan" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Stuklijstartikel" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Toegewezen voorraad" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "In bestelling" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" -msgstr "" +msgstr "In productie" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Externe voorraad" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Beschikbare Voorraad" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Beschikbare vervanging voorraad" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Beschikbare varianten voorraad" @@ -1470,7 +1419,7 @@ msgstr "Productie" #: build/status_codes.py:13 order/status_codes.py:14 order/status_codes.py:51 #: order/status_codes.py:81 msgid "On Hold" -msgstr "" +msgstr "In de wacht" #: build/status_codes.py:14 order/status_codes.py:16 order/status_codes.py:53 #: order/status_codes.py:84 @@ -1479,7 +1428,7 @@ msgstr "Geannuleerd" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Voltooid" @@ -1498,31 +1447,31 @@ msgstr "Productieorder {bo} is nu achterstallig" #: common/api.py:724 msgid "Is Link" -msgstr "" +msgstr "Is koppeling" #: common/api.py:732 msgid "Is File" -msgstr "" +msgstr "Is een bestand" #: common/api.py:775 msgid "User does not have permission to delete these attachments" -msgstr "" +msgstr "Gebruiker heeft geen toestemming om deze bijlagen te verwijderen" #: common/api.py:792 msgid "User does not have permission to delete this attachment" -msgstr "" +msgstr "Gebruiker heeft geen toestemming om deze bijlage te verwijderen." #: common/currency.py:120 msgid "Invalid currency code" -msgstr "" +msgstr "Ongeldige valuta code" #: common/currency.py:122 msgid "Duplicate currency code" -msgstr "" +msgstr "Dubbele valutacode" #: common/currency.py:127 msgid "No valid currency codes provided" -msgstr "" +msgstr "Geen geldige valuta codes opgegeven" #: common/currency.py:144 msgid "No plugin" @@ -1546,7 +1495,7 @@ msgstr "Projectbeschrijving" #: common/models.py:118 msgid "User or group responsible for this project" -msgstr "" +msgstr "Gebruiker of groep die verantwoordelijk is voor dit project" #: common/models.py:706 common/models.py:1172 common/models.py:1210 msgid "Settings key" @@ -1570,11 +1519,11 @@ msgstr "Waarde moet een geheel getal zijn" #: common/models.py:797 msgid "Value must be a valid number" -msgstr "" +msgstr "Waarde moet een geldig getal zijn" #: common/models.py:822 msgid "Value does not pass validation checks" -msgstr "" +msgstr "Waarde is niet geldig voor validatiecontrole" #: common/models.py:844 msgid "Key string must be unique" @@ -1583,25 +1532,25 @@ msgstr "Sleutelreeks moet uniek zijn" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Gebruiker" #: common/models.py:1241 msgid "Price break quantity" -msgstr "" +msgstr "Prijs pauze hoeveelheid" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Prijs" #: common/models.py:1249 msgid "Unit price at specified quantity" -msgstr "" +msgstr "Stukprijs op opgegeven hoeveelheid" #: common/models.py:1300 common/models.py:1485 msgid "Endpoint" @@ -1619,9 +1568,9 @@ msgstr "Naam van deze webhook" msgid "Is this webhook active" msgstr "Is deze webhook actief" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" -msgstr "" +msgstr "Sleutel" #: common/models.py:1332 msgid "Token for access" @@ -1641,15 +1590,15 @@ msgstr "Bericht ID" #: common/models.py:1450 msgid "Unique identifier for this message" -msgstr "" +msgstr "Unieke identificatie voor dit bericht" #: common/models.py:1458 msgid "Host" -msgstr "" +msgstr "Host" #: common/models.py:1459 msgid "Host from which this message was received" -msgstr "" +msgstr "Host waarvan dit bericht is ontvangen" #: common/models.py:1467 msgid "Header" @@ -1669,7 +1618,7 @@ msgstr "Inhoud van dit bericht" #: common/models.py:1486 msgid "Endpoint on which this message was received" -msgstr "" +msgstr "Eindpunt waarop dit bericht is ontvangen" #: common/models.py:1491 msgid "Worked on" @@ -1677,20 +1626,20 @@ msgstr "Aan gewerkt" #: common/models.py:1492 msgid "Was the work on this message finished?" -msgstr "" +msgstr "Is het werk aan dit bericht voltooid?" #: common/models.py:1618 msgid "Id" -msgstr "" +msgstr "Id" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Titel" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Koppeling" @@ -1701,7 +1650,7 @@ msgstr "Gepubliceerd" #: common/models.py:1626 msgid "Author" -msgstr "" +msgstr "Auteur" #: common/models.py:1628 msgid "Summary" @@ -1713,13 +1662,12 @@ msgstr "Gelezen" #: common/models.py:1631 msgid "Was this news item read?" -msgstr "" +msgstr "Is dit nieuwsitem gelezen?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Afbeelding" @@ -1729,7 +1677,7 @@ msgstr "Afbeelding" #: common/models.py:1660 common/models.py:1861 msgid "Target model type for this image" -msgstr "" +msgstr "Doel type voor deze afbeelding" #: common/models.py:1664 msgid "Target model ID for this image" @@ -1767,7 +1715,7 @@ msgstr "Definitie" msgid "Unit definition" msgstr "Definitie van eenheid" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Bijlage" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Staat logische sleutel die gelijk is aan deze staat in zakelijke logica" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Waarde" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Naam van de toestand" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Label" @@ -1866,7 +1814,7 @@ msgstr "Kleur" msgid "Color that will be displayed in the frontend" msgstr "Kleur die in de frontend getoond wordt" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1906,7 +1854,7 @@ msgstr "Logische sleutel moet in de logische sleutels van de referentiestatus st msgid "Name must be different from the names of the reference status" msgstr "Naam moet anders zijn dan de namen van de referentie status" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "Keuzelijst" @@ -1922,7 +1870,7 @@ msgstr "Naam van de selectielijst" msgid "Description of the selection list" msgstr "Beschrijving van de selectielijst" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "Vergrendeld" @@ -1984,7 +1932,7 @@ msgstr "" #: common/models.py:2217 msgid "Selection list to which this entry belongs" -msgstr "" +msgstr "Selectielijst waaraan dit item hoort" #: common/models.py:2223 msgid "Value of the selection list entry" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "Barcode Scan" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "Reactiegegevens van de barcode scan" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Resultaat" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Geen groep" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Opnieuw opstarten vereist" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Een instelling is gewijzigd waarvoor een herstart van de server vereist is" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migraties in behandeling" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "ID Serverinstantie" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Stringbeschrijving voor de server instantie" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Gebruik de instantie naam" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Gebruik de naam van de instantie in de titelbalk" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Tonen `over` beperken" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Toon de `over` modal alleen aan superusers" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Bedrijfsnaam" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Interne bedrijfsnaam" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Basis-URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Basis URL voor serverinstantie" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Standaard Valuta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Selecteer basisvaluta voor de berekening van prijzen" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dagen" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Download van URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Download van afbeeldingen en bestanden vanaf een externe URL toestaan" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Download limiet" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maximale downloadgrootte voor externe afbeelding" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-agent gebruikt om te downloaden van URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Sta toe om de user-agent te overschrijven die gebruikt wordt om afbeeldingen en bestanden van externe URL te downloaden (laat leeg voor de standaard)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Interval voor update" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Hoe vaak te controleren op updates (nul om uit te schakelen)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatische backup" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Automatische back-up van database- en mediabestanden inschakelen" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Automatische backup interval" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Geef het aantal dagen op tussen geautomatiseerde backup" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Interval Taak Verwijderen" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Resultaten van achtergrondtaken worden verwijderd na het opgegeven aantal dagen" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Error Log Verwijderings Interval" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Resultaten van achtergrondtaken worden verwijderd na het opgegeven aantal dagen" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Interval Verwijderen Notificatie" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Meldingen van gebruikers worden verwijderd na het opgegeven aantal dagen" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Streepjescodeondersteuning" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Sla de resultaten van de barcode op" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Sla de barcode scan resultaten op in de database" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Maximale aantal Barcode Scans" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Maximum aantal resultaten van de barcode scan op te slaan" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Barcode Invoer Vertraging" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Barcode invoerverwerking vertraging" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Barcode Webcam Ondersteuning" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Barcode via webcam scannen in browser toestaan" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Herzieningen onderdeel" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Revisieveld voor onderdeel inschakelen" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" -msgstr "" +msgstr "Alleen assemblee revisie" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" -msgstr "" +msgstr "Alleen revisies toestaan voor assemblageonderdelen" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" -msgstr "" +msgstr "Verwijderen uit Assemblage toestaan" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Verwijderen van onderdelen die in een groep worden gebruikt toestaan" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN Regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulier expressiepatroon voor het overeenkomende Onderdeel IPN" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Duplicaat IPN toestaan" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Toestaan dat meerdere onderdelen dezelfde IPN gebruiken" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Bewerken IPN toestaan" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Sta het wijzigen van de IPN toe tijdens het bewerken van een onderdeel" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Kopieer Onderdeel Stuklijstgegevens" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopieer standaard stuklijstgegevens bij het dupliceren van een onderdeel" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Kopieer Onderdeel Parametergegevens" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Parametergegevens standaard kopiëren bij het dupliceren van een onderdeel" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Kopieer Onderdeel Testdata" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Testdata standaard kopiëren bij het dupliceren van een onderdeel" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kopiëer Categorieparameter Sjablonen" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Sjabloon" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Onderdelen zijn standaard sjablonen" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Onderdeel" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Koopbaar" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Onderdelen kunnen standaard gekocht worden" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Verkoopbaar" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Onderdelen kunnen standaard verkocht worden" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Onderdelen kunnen standaard gevolgd worden" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtueel" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Onderdelen zijn standaard virtueel" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Toon Import in Weergaven" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Toon de importwizard in sommige onderdelenweergaven" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Verwante onderdelen tonen" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Verwante onderdelen voor een onderdeel tonen" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Initiële voorraadgegevens" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Aanmaken van eerste voorraad toestaan bij het toevoegen van een nieuw onderdeel" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Initiële leveranciergegevens" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Aanmaken van eerste leveranciersgegevens toestaan bij het toevoegen van een nieuw onderdeel" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Onderdelennaam Weergaveopmaak" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Opmaak om de onderdeelnaam weer te geven" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Standaardicoon voor onderdeel catagorie" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Standaardicoon voor onderdeel catagorie (leeg betekent geen pictogram)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Forceer Parameter Eenheden" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Als er eenheden worden opgegeven, moeten parameterwaarden overeenkomen met de opgegeven eenheden" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Minimaal aantal prijs decimalen" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimaal aantal decimalen om weer te geven bij het weergeven van prijsgegevens" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Maximum prijs decimalen" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximum aantal decimalen om weer te geven bij het weergeven van prijsgegevens" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Gebruik leveranciersprijzen" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Prijsvoordelen leveranciers opnemen in de totale prijsberekening" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Aankoopgeschiedenis overschrijven" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historische order prijzen overschrijven de prijzen van de leverancier" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Gebruik voorraaditem prijzen" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Gebruik prijzen van handmatig ingevoerde voorraadgegevens voor prijsberekeningen" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Voorraad artikelprijs leeftijd" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Voorraaditems ouder dan dit aantal dagen uitsluiten van prijsberekeningen" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Gebruik variantprijzen" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Variantenprijzen opnemen in de totale prijsberekening" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Alleen actieve varianten" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Gebruik alleen actieve variantonderdelen voor het berekenen van variantprijzen" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Prijzen Herbouw interval" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Aantal dagen voordat de prijzen voor onderdelen automatisch worden bijgewerkt" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interne Prijzen" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Inschakelen van interne prijzen voor onderdelen" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Interne prijs overschrijven" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Indien beschikbaar, interne prijzen overschrijven berekeningen van prijsbereik" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Printen van labels Inschakelen" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Printen van labels via de webinterface inschakelen" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Label Afbeelding DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI resolutie bij het genereren van afbeelginsbestanden voor label printer plugins" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Activeer Rapportages" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Activeer het genereren van rapporten" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Foutopsporingsmodus" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Rapporten genereren in debug modus (HTML uitvoer)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Log fouten" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Registreer fouten die optreden bij het genereren van rapporten" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Paginagrootte" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Standaard paginagrootte voor PDF rapporten" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Globaal unieke serienummers" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Serienummers voor voorraaditems moeten globaal uniek zijn" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Serienummers automatisch invullen" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Automatisch invullen van serienummer in formulieren" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Verwijder uitgeputte voorraad" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Bepaalt standaard gedrag wanneer een voorraadartikel leeg is" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Batchcode Sjabloon" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Sjabloon voor het genereren van standaard batchcodes voor voorraadartikelen" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Verlopen Voorraad" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Verlopen voorraad functionaliteit inschakelen" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Verkoop Verlopen Voorraad" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Verkoop verlopen voorraad toestaan" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Voorraad Vervaltijd" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Aantal dagen voordat voorraadartikelen als verouderd worden beschouwd voor ze verlopen" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Produceer Verlopen Voorraad" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Sta productie met verlopen voorraad toe" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Voorraad Eigenaar Toezicht" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Eigenaarstoezicht over voorraadlocaties en items inschakelen" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Voorraadlocatie standaard icoon" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Standaard locatie pictogram (leeg betekent geen icoon)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Geïnstalleerde voorraad items weergeven" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Geïnstalleerde voorraadartikelen in voorraadtabellen tonen" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Controleer BOM bij het installeren van items" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Geïnstalleerde voorraad items moeten in de BOM voor het bovenliggende deel bestaan" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Sta 'Niet op voorraad overschrijving' toe" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Toestaan dat voorraadartikelen die niet op voorraad zijn worden overgebracht tussen voorraadlocaties" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Productieorderreferentiepatroon" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Vereist patroon voor het genereren van het Bouworderreferentieveld" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Vereis verantwoordelijke eigenaar" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Een verantwoordelijke eigenaar moet worden toegewezen aan elke bestelling" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Vereist een actief onderdeel" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Voorkom het maken van orders voor inactieve onderdelen" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Vergrendeld onderdeel vereisen" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Voorkom het maken van orders voor ontgrendelde onderdelen" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "Vereist een geldige BOM" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Voorkom het creëren van bouworders tenzij BOM is gevalideerd" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "Onderliggende bestellingen vereist" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Voorkom voltooiing van de bouw tot alle sub orders gesloten zijn" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Blokkeren tot test geslaagd" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Voorkom dat de bouw van de uitvoer wordt voltooid totdat alle vereiste testen zijn geslaagd" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Retourorders inschakelen" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Retourorder functionaliteit inschakelen in de gebruikersinterface" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Retourorder referentie patroon" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Verplicht patroon voor het genereren van Retourorder referentie veld" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Bewerk voltooide retourorders" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Bewerken van retourorders toestaan nadat deze zijn voltooid" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Verkooporderreferentiepatroon" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Vereist patroon voor het genereren van het Verkooporderreferentieveld" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Standaard Verzending Verkooporder" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Aanmaken standaard verzending bij verkooporders inschakelen" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Bewerk voltooide verkooporders" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Bewerken van verkooporders toestaan nadat deze zijn verzonden of voltooid" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Verstuurde bestellingen markeren als voltooid" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Verkooporders gemarkeerd als verzonden zullen automatisch worden voltooid, zonder de status \"verzonden\"" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Inkooporderreferentiepatroon" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Vereist patroon voor het genereren van het Inkooporderreferentieveld" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Bewerk voltooide verkooporders" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Bewerken van inkooporders toestaan nadat deze zijn verzonden of voltooid" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "Valuta converteren" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "Verander artikelwaarde naar basisvaluta bij het ontvangen van voorraad" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Inkooporders automatisch voltooien" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Markeer orders automatisch als voltooid wanneer alle regelitems worden ontvangen" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Wachtwoord vergeten functie inschakelen" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Wachtwoord vergeten functie inschakelen op de inlogpagina's" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Registratie inschakelen" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Zelfregistratie voor gebruikers op de inlogpagina's inschakelen" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "SSO inschakelen" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "SSO inschakelen op de inlogpagina's" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Schakel gebruikersregistratie met SSO in" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Zelfregistratie voor gebruikers middels SSO op de inlogpagina's inschakelen" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "SSO-groep synchroniseren inschakelen" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Inschakelen van het synchroniseren van InvenTree groepen met groepen geboden door de IdP" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "SSO groep sleutel" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "De naam van de groepen claim attribuut van de IdP" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "SSO groep kaart" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Een mapping van SSO-groepen naar lokale InvenTree groepen. Als de lokale groep niet bestaat, zal deze worden aangemaakt." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "Verwijder groepen buiten SSO" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "Of groepen die zijn toegewezen aan de gebruiker moeten worden verwijderd als ze geen backend zijn door de IdP. Het uitschakelen van deze instelling kan beveiligingsproblemen veroorzaken" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "E-mailadres verplicht" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Vereis gebruiker om e-mailadres te registreren bij aanmelding" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "SSO-gebruikers automatisch invullen" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Gebruikersdetails van SSO-accountgegevens automatisch invullen" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "E-mail twee keer" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Bij inschrijving gebruikers twee keer om hun e-mail vragen" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Wachtwoord tweemaal" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Laat gebruikers twee keer om hun wachtwoord vragen tijdens het aanmelden" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Toegestane domeinen" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Inschrijven beperken tot bepaalde domeinen (komma-gescheiden, beginnend met @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Groep bij aanmelding" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Groep waaraan nieuwe gebruikers zijn toegewezen op registratie. Als SSO-groepssynchronisatie is ingeschakeld, is deze groep alleen ingesteld als er geen groep vanuit de IdP kan worden toegewezen." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "MFA afdwingen" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Gebruikers moeten multifactor-beveiliging gebruiken." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Controleer plugins bij het opstarten" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Controleer of alle plug-ins zijn geïnstalleerd bij het opstarten - inschakelen in container-omgevingen" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Controleren op plug-in updates" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Schakel periodieke controles voor updates voor geïnstalleerde plug-ins in" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Activeer URL-integratie" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Plugins toestaan om URL-routes toe te voegen" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Activeer navigatie integratie" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Plugins toestaan om te integreren in navigatie" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Activeer app integratie" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Activeer plug-ins om apps toe te voegen" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Activeer planning integratie" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Activeer plugin om periodiek taken uit te voeren" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Activeer evenement integratie" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Activeer plugin om op interne evenementen te reageren" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Interface integratie activeren" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Plug-ins inschakelen om te integreren in de gebruikersinterface" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "Activeer project codes" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "Schakel projectcodes in voor het bijhouden van projecten" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Voorraadcontrole functionaliteit" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Schakel voorraadfunctionaliteit in voor het opnemen van voorraadniveaus en het berekenen van voorraadwaarde" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Externe locaties uitsluiten" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Voorraadartikelen op externe locaties uitsluiten van voorraadberekeningen" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Automatische Voorraadcontrole Periode" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Aantal dagen tussen automatische voorraadopname (ingesteld op nul om uit te schakelen)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Rapport Verwijdering Interval" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Voorraadrapportage zal worden verwijderd na het opgegeven aantal dagen" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Gebruikers volledige namen weergeven" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Laat gebruikers volledige namen zien in plaats van gebruikersnamen" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Inschakelen van teststation data" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Schakel teststation gegevensverzameling in voor testresultaten" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "Maak template aan bij het uploaden" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Maak een nieuw testsjabloon bij het uploaden van testgegevens die niet overeenkomen met een bestaande sjabloon" @@ -3469,11 +3433,11 @@ msgstr "Maximale lengte voor tekenreeksen weergegeven in tabelweergaven" #: common/setting/user.py:221 msgid "Show Last Breadcrumb" -msgstr "" +msgstr "Toon laatste broodkruimel" #: common/setting/user.py:222 msgid "Show the current page in breadcrumbs" -msgstr "" +msgstr "Toon de huidige pagina in het kruimelpad" #: common/setting/user.py:227 msgid "Receive error reports" @@ -3505,7 +3469,7 @@ msgstr "Minimale plaatsen mogen niet groter zijn dan het maximum" #: common/validators.py:94 msgid "Maximum places cannot be less than minimum places" -msgstr "" +msgstr "Maximum aantal plaatsen kan niet minder zijn dan minimaal" #: common/validators.py:105 msgid "An empty domain is not allowed." @@ -3526,37 +3490,37 @@ msgstr "Waarde moet een geldige variabele id zijn" #: company/api.py:141 msgid "Part is Active" -msgstr "" +msgstr "Onderdeel is actief" #: company/api.py:145 msgid "Manufacturer is Active" -msgstr "" +msgstr "Fabrikant is actief" #: company/api.py:278 msgid "Supplier Part is Active" -msgstr "" +msgstr "Leveranciersonderdelen is actief" #: company/api.py:282 msgid "Internal Part is Active" -msgstr "" +msgstr "Intern onderdeel is actief" #: company/api.py:287 msgid "Supplier is Active" -msgstr "" +msgstr "Leverancier is actief" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Fabrikant" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Bedrijf" #: company/api.py:316 msgid "Has Stock" -msgstr "" +msgstr "Heeft voorraad" #: company/models.py:98 msgid "Companies" @@ -3564,15 +3528,15 @@ msgstr "Bedrijven" #: company/models.py:114 msgid "Company description" -msgstr "" +msgstr "Bedrijf omschrijving" #: company/models.py:115 msgid "Description of the company" -msgstr "" +msgstr "Omschrijving van het bedrijf" #: company/models.py:120 msgid "Website" -msgstr "" +msgstr "Website" #: company/models.py:120 msgid "Company website URL" @@ -3592,7 +3556,7 @@ msgstr "Contact e-mailadres" #: company/models.py:139 company/models.py:270 order/models.py:404 msgid "Contact" -msgstr "" +msgstr "Contact" #: company/models.py:141 msgid "Point of contact" @@ -3604,27 +3568,27 @@ msgstr "Link naar externe bedrijfsinformatie" #: company/models.py:160 msgid "Is this company active?" -msgstr "" +msgstr "Is dit bedrijf actief?" #: company/models.py:165 msgid "Is customer" -msgstr "" +msgstr "Is klant" #: company/models.py:166 msgid "Do you sell items to this company?" -msgstr "" +msgstr "Verkoop je artikelen aan dit bedrijf?" #: company/models.py:171 msgid "Is supplier" -msgstr "" +msgstr "Is leverancier" #: company/models.py:172 msgid "Do you purchase items from this company?" -msgstr "" +msgstr "Koop je artikelen van dit bedrijf?" #: company/models.py:177 msgid "Is manufacturer" -msgstr "" +msgstr "Is fabrikant" #: company/models.py:178 msgid "Does this company manufacture parts?" @@ -3640,94 +3604,94 @@ msgstr "Adres" #: company/models.py:310 msgid "Addresses" -msgstr "" +msgstr "Adres" #: company/models.py:367 msgid "Select company" -msgstr "" +msgstr "Selecteer bedrijf" #: company/models.py:372 msgid "Address title" -msgstr "" +msgstr "Adres titel" #: company/models.py:373 msgid "Title describing the address entry" -msgstr "" +msgstr "Titel die het adres beschrijft" #: company/models.py:379 msgid "Primary address" -msgstr "" +msgstr "Primair adres" #: company/models.py:380 msgid "Set as primary address" -msgstr "" +msgstr "Instellen als primair adres" #: company/models.py:385 msgid "Line 1" -msgstr "" +msgstr "Lijn 1" #: company/models.py:386 msgid "Address line 1" -msgstr "" +msgstr "Adresregel 1" #: company/models.py:392 msgid "Line 2" -msgstr "" +msgstr "Lijn 2" #: company/models.py:393 msgid "Address line 2" -msgstr "" +msgstr "Adresregel 2" #: company/models.py:399 company/models.py:400 msgid "Postal code" -msgstr "" +msgstr "Post code" #: company/models.py:406 msgid "City/Region" -msgstr "" +msgstr "Plaats/regio" #: company/models.py:407 msgid "Postal code city/region" -msgstr "" +msgstr "Postcode plaats/regio" #: company/models.py:413 msgid "State/Province" -msgstr "" +msgstr "Staat/provincie" #: company/models.py:414 msgid "State or province" -msgstr "" +msgstr "Staat of provincie" #: company/models.py:420 msgid "Country" -msgstr "" +msgstr "Land" #: company/models.py:421 msgid "Address country" -msgstr "" +msgstr "Adres land" #: company/models.py:427 msgid "Courier shipping notes" -msgstr "" +msgstr "Koerier verzend notities" #: company/models.py:428 msgid "Notes for shipping courier" -msgstr "" +msgstr "Opmerkingen voor verzending koerier" #: company/models.py:434 msgid "Internal shipping notes" -msgstr "" +msgstr "Interne verzend notities" #: company/models.py:435 msgid "Shipping notes for internal use" -msgstr "" +msgstr "Verzend notities voor intern gebruik" #: company/models.py:442 msgid "Link to address information (external)" -msgstr "" +msgstr "Link naar adres gegevens (extern)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Fabrikant onderdeel" @@ -3744,10 +3708,10 @@ msgstr "Onderdeel selecteren" msgid "Select manufacturer" msgstr "Fabrikant selecteren" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" -msgstr "" +msgstr "Fabrikant artikel nummer" #: company/models.py:501 stock/serializers.py:602 msgid "Manufacturer Part Number" @@ -3763,7 +3727,7 @@ msgstr "Omschrijving onderdeel fabrikant" #: company/models.py:570 msgid "Manufacturer Part Parameter" -msgstr "" +msgstr "Fabrikant onderdeel parameter" #: company/models.py:589 msgid "Parameter name" @@ -3773,7 +3737,7 @@ msgstr "Parameternaam" msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Eenheden" @@ -3783,21 +3747,21 @@ msgstr "Parameter eenheden" #: company/models.py:712 msgid "Pack units must be compatible with the base part units" -msgstr "" +msgstr "Pakket eenheden moeten compatibel zijn met de basis onderdeel eenheden" #: company/models.py:719 msgid "Pack units must be greater than zero" -msgstr "" +msgstr "Hoeveelheid moet groter zijn dan nul" #: company/models.py:733 msgid "Linked manufacturer part must reference the same base part" msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Leverancier" @@ -3805,13 +3769,13 @@ msgstr "Leverancier" msgid "Select supplier" msgstr "Leverancier selecteren" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Voorraad beheers eenheid voor leveranciers" #: company/models.py:795 msgid "Is this supplier part active?" -msgstr "" +msgstr "Is dit leveranciersdeel actief?" #: company/models.py:805 msgid "Select manufacturer part" @@ -3819,14 +3783,14 @@ msgstr "Selecteer fabrikant onderdeel" #: company/models.py:812 msgid "URL for external supplier part link" -msgstr "" +msgstr "URL voor link externe leveranciers onderdeel" #: company/models.py:821 msgid "Supplier part description" -msgstr "" +msgstr "Omschrijving leveranciersdeel" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,32 +3800,32 @@ msgstr "" msgid "Note" msgstr "Opmerking" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "basisprijs" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Verpakking" #: company/models.py:846 msgid "Part packaging" -msgstr "" +msgstr "Onderdeel verpakking" #: company/models.py:851 msgid "Pack Quantity" -msgstr "" +msgstr "Pakket hoeveelheid" #: company/models.py:853 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Totale hoeveelheid geleverd in één pakket. Laat leeg voor enkele afzonderlijke items." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "meerdere" @@ -3885,15 +3849,15 @@ msgstr "Datum van de laatste update van de beschikbaarheid gegevens" msgid "Supplier Price Break" msgstr "Prijsverschil van leverancier" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Standaardvaluta die gebruikt wordt voor deze leverancier" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Bedrijfsnaam" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Op voorraad" @@ -3905,7 +3869,7 @@ msgstr "Aangepaste status sleutel" msgid "Additional status information for this item" msgstr "Additionele statusinformatie voor dit item" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Sleutel" @@ -3933,6 +3897,10 @@ msgstr "Ongeldige statuscode" msgid "Invalid export format" msgstr "Ongeldige export indeling" +#: importer/models.py:64 +msgid "Data File" +msgstr "Data bestand" + #: importer/models.py:65 msgid "Data file to import" msgstr "Te importeren databestand" @@ -4009,7 +3977,7 @@ msgstr "Oorspronkelijke rij gegevens" msgid "Errors" msgstr "Fouten" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Geldig" @@ -4075,127 +4043,127 @@ msgstr "Gegevens importeren" #: importer/status_codes.py:24 msgid "Processing Data" -msgstr "" +msgstr "Gegevens verwerken" #: importer/validators.py:21 msgid "Data file exceeds maximum size limit" -msgstr "" +msgstr "Gegevensbestand overschrijdt maximum grootte" #: importer/validators.py:26 msgid "Data file contains no headers" -msgstr "" +msgstr "Gegevensbestand bevat geen kopteksten" #: importer/validators.py:29 msgid "Data file contains too many columns" -msgstr "" +msgstr "Gegevensbestand bevat te veel kolommen" #: importer/validators.py:32 msgid "Data file contains too many rows" -msgstr "" +msgstr "Gegevensbestand bevat te veel rijen" #: importer/validators.py:53 msgid "Value must be a valid dictionary object" -msgstr "" +msgstr "Waarde moet een geldig woordenboek teken zijn" #: machine/machine_types/label_printer.py:216 msgid "Copies" -msgstr "" +msgstr "Kopieën" #: machine/machine_types/label_printer.py:217 msgid "Number of copies to print for each label" -msgstr "" +msgstr "Aantal afdrukken voor elk label" #: machine/machine_types/label_printer.py:232 msgid "Connected" -msgstr "" +msgstr "Verbonden" #: machine/machine_types/label_printer.py:233 order/api.py:1660 msgid "Unknown" -msgstr "" +msgstr "Onbekend" #: machine/machine_types/label_printer.py:234 msgid "Printing" -msgstr "" +msgstr "Afdrukken" #: machine/machine_types/label_printer.py:235 msgid "No media" -msgstr "" +msgstr "Geen media" #: machine/machine_types/label_printer.py:236 msgid "Paper jam" -msgstr "" +msgstr "Het papier is vastgelopen" #: machine/machine_types/label_printer.py:237 msgid "Disconnected" -msgstr "" +msgstr "Verbinding verbroken" #: machine/machine_types/label_printer.py:244 msgid "Label Printer" -msgstr "" +msgstr "Label printer" #: machine/machine_types/label_printer.py:245 msgid "Directly print labels for various items." -msgstr "" +msgstr "Direct labels afdrukken voor verschillende items." #: machine/machine_types/label_printer.py:251 msgid "Printer Location" -msgstr "" +msgstr "Printer locatie" #: machine/machine_types/label_printer.py:252 msgid "Scope the printer to a specific location" -msgstr "" +msgstr "Bereik de printer naar een specifieke locatie" #: machine/models.py:25 msgid "Name of machine" -msgstr "" +msgstr "Naam van de machine" #: machine/models.py:29 msgid "Machine Type" -msgstr "" +msgstr "Machine type" #: machine/models.py:29 msgid "Type of machine" -msgstr "" +msgstr "Type machine" #: machine/models.py:34 machine/models.py:146 msgid "Driver" -msgstr "" +msgstr "Stuurprogramma" #: machine/models.py:35 msgid "Driver used for the machine" -msgstr "" +msgstr "Stuurprogramma gebruikt voor de machine" #: machine/models.py:39 msgid "Machines can be disabled" -msgstr "" +msgstr "Machines kunnen worden uitgeschakeld" #: machine/models.py:95 msgid "Driver available" -msgstr "" +msgstr "Stuurprogramma beschikbaar" #: machine/models.py:100 msgid "No errors" -msgstr "" +msgstr "Geen fouten" #: machine/models.py:105 msgid "Initialized" -msgstr "" +msgstr "Geïnitialiseerd" #: machine/models.py:117 msgid "Machine status" -msgstr "" +msgstr "Machine status" #: machine/models.py:145 msgid "Machine" -msgstr "" +msgstr "Machine" #: machine/models.py:151 msgid "Machine Config" -msgstr "" +msgstr "Machine configuratie" #: machine/models.py:156 msgid "Config type" -msgstr "" +msgstr "Configuratie type" #: order/api.py:115 msgid "Order Reference" @@ -4203,11 +4171,11 @@ msgstr "Order Referentie" #: order/api.py:143 order/api.py:1121 msgid "Outstanding" -msgstr "" +msgstr "Uitmuntend" #: order/api.py:159 msgid "Has Project Code" -msgstr "" +msgstr "Heeft een projectcode" #: order/api.py:173 order/models.py:386 msgid "Created By" @@ -4215,57 +4183,57 @@ msgstr "Aangemaakt Door" #: order/api.py:177 msgid "Created Before" -msgstr "" +msgstr "Gemaakt vóór" #: order/api.py:181 msgid "Created After" -msgstr "" +msgstr "Gemaakt na" #: order/api.py:185 msgid "Has Start Date" -msgstr "" +msgstr "Heeft vervaldatum" #: order/api.py:193 msgid "Start Date Before" -msgstr "" +msgstr "Vervaldatum voor" #: order/api.py:197 msgid "Start Date After" -msgstr "" +msgstr "Vervaldatum na" #: order/api.py:201 msgid "Has Target Date" -msgstr "" +msgstr "Heeft doel datum" #: order/api.py:209 msgid "Target Date Before" -msgstr "" +msgstr "Doel datum voor" #: order/api.py:213 msgid "Target Date After" -msgstr "" +msgstr "Doel datum na" #: order/api.py:226 msgid "Has Pricing" -msgstr "" +msgstr "Heeft prijsstelling" #: order/api.py:275 order/api.py:742 order/api.py:1356 msgid "Completed Before" -msgstr "" +msgstr "Voltooid voor" #: order/api.py:279 order/api.py:746 order/api.py:1360 msgid "Completed After" -msgstr "" +msgstr "Voltooid na" #: order/api.py:463 order/api.py:859 order/api.py:1085 order/models.py:1641 #: order/models.py:1759 order/models.py:1810 order/models.py:1938 #: order/models.py:2101 order/models.py:2604 order/models.py:2670 msgid "Order" -msgstr "" +msgstr "Bestellen" #: order/api.py:467 order/api.py:897 msgid "Order Complete" -msgstr "" +msgstr "Bestelling voltooid" #: order/api.py:499 order/serializers.py:656 msgid "Internal Part" @@ -4273,7 +4241,7 @@ msgstr "Intern onderdeel" #: order/api.py:518 msgid "Order Pending" -msgstr "" +msgstr "Bestelling in behandeling" #: order/api.py:882 msgid "Completed" @@ -4317,7 +4285,7 @@ msgstr "" #: order/models.py:95 order/serializers.py:75 msgid "Order Currency" -msgstr "" +msgstr "Valuta bestelling" #: order/models.py:98 order/serializers.py:76 msgid "Currency for this order (leave blank to use company default)" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Hoeveelheid moet een positief getal zijn" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Klant" @@ -4836,11 +4804,11 @@ msgstr "Items samenvoegen" msgid "Merge items with the same part, destination and target date into one line item" msgstr "Items met hetzelfde onderdeel, bestemming en doeldatum samenvoegen in één regelitem" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Intern Onderdeelnummer" @@ -4880,7 +4848,7 @@ msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen" msgid "Enter batch code for incoming stock items" msgstr "Voer batch code in voor inkomende voorraad items" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Vervaldatum" @@ -4980,7 +4948,7 @@ msgstr "De volgende serienummers zijn niet beschikbaar" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5062,7 +5030,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Diepte" @@ -5070,7 +5038,7 @@ msgstr "Diepte" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Hoogste niveau" @@ -5078,7 +5046,7 @@ msgstr "Hoogste niveau" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "Stapelen" @@ -5106,1250 +5074,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Binnenkomende Inkooporder" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Uitgaande Verkooporder" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Geproduceerde voorraad door Productieorder" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Voorraad vereist voor Productieorder" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Onderdeel Categorie" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Onderdeel Categorieën" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Standaard locatie" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Standaard locatie voor onderdelen in deze categorie" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Structureel" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Onderdelen mogen niet rechtstreeks aan een structurele categorie worden toegewezen, maar kunnen worden toegewezen aan subcategorieën." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Pictogram" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Pictogram (optioneel)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Onderdelen" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Voorraadartikel met dit serienummer bestaat al" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Onderdeel naam" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Beschrijving (optioneel)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Sleutelwoorden" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Deel sleutelwoorden om de zichtbaarheid van de zoekresultaten te verbeteren" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Onderdeel Categorie" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Onderdeel revisie of versienummer" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisie" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "Is dit deel een herziening van een ander deel?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "Revisie van" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Waar wordt dit item normaal opgeslagen?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Standaard leverancier" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Standaardleverancier" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Standaard verval datum" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Verlooptijd (in dagen) voor voorraadartikelen van dit deel" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimum voorraad" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Minimaal toegelaten stock niveau" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Eenheden voor dit onderdeel" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Kan dit onderdeel uit andere delen worden gebouwd?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Kan dit onderdeel gebruikt worden om andere onderdelen te bouwen?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Heeft dit onderdeel een tracking voor unieke items?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "Kunnen de testresultaten van dit onderdeel tegen dit onderdeel worden geregistreerd?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Kan dit onderdeel worden gekocht van externe leveranciers?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Kan dit onderdeel aan klanten worden verkocht?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Is dit onderdeel actief?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "Vergrendelde onderdelen kunnen niet worden bewerkt" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Is dit een virtueel onderdeel, zoals een softwareproduct of licentie?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Aanmaken gebruiker" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Eigenaar verantwoordelijk voor dit deel" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Laatste voorraadcontrole" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Verkopen van meerdere" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Valuta die gebruikt wordt voor de cache berekeningen" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimale BOM kosten" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Minimale kosten van onderdelen" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maximale BOM kosten" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Maximale kosten van onderdelen" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimale aankoop kosten" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Minimale historische aankoop kosten" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maximale aanschaf kosten" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Maximum historische aankoop kosten" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Minimale interne prijs" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Minimale kosten op basis van interne prijsschommelingen" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Maximale interne prijs" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Maximale kosten gebaseerd op interne prijsvoordelen" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Minimale leverancier prijs" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Minimale prijs van onderdeel van externe leveranciers" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Maximale leverancier prijs" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Maximale prijs van onderdeel van externe leveranciers" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimale variant kosten" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Berekende minimale kosten van variant onderdelen" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maximale variant kosten" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Berekende maximale kosten van variant onderdelen" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimale kostprijs" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Overschrijf minimale kosten" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maximale kosten" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Onderdeel voor voorraadcontrole" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Aantal individuele voorraadvermeldingen op het moment van voorraadcontrole" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Totale voorraad op het moment van voorraadcontrole" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Datum waarop voorraad werd uitgevoerd" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Gebruiker die deze voorraad heeft uitgevoerd" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Minimale voorraadprijs" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Geschatte minimum kosten van de voorraad op de hand" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maximale voorraadkosten" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Geschatte maximale kosten van de hand van voorraad" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Bestand voorraadcontrole (intern gegenereerd)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Aantal onderdelen" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Aantal door voorraadopname gedekte onderdelen" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Gebruiker die om dit voorraadrapport heeft gevraagd" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Test sjablonen kunnen alleen worden gemaakt voor testbare onderdelen" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Ingeschakeld" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" -msgstr "" +msgstr "Parameter omschrijving" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" -msgstr "" +msgstr "Selectievakje" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" -msgstr "" +msgstr "Is deze parameter een selectievak?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" -msgstr "" +msgstr "Geldige keuzes voor deze parameter (komma gescheiden)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" -msgstr "" +msgstr "Lijst met selecties voor deze parameter" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" -msgstr "" +msgstr "Onderdeel parameters" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" -msgstr "" +msgstr "Parameter kan niet worden gewijzigd - onderdeel is vergrendeld" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" -msgstr "" +msgstr "Ongeldige keuze voor parameter waarde" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Hoofd onderdeel" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Parameter sjabloon" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "Sjabloon categorie parameters onderdeel" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Standaard waarde" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Onderdeel ID of deel naam" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Onderdeel-id" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Unieke onderdeel ID-waarde" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN onderdeel" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Onderdeel IPN-waarde" - -#: part/models.py:4130 -msgid "Level" -msgstr "Niveau" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "BOM niveau" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld " -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "BOM item kan niet worden gewijzigd - assemblage is vergrendeld" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Selecteer boven liggend onderdeel" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Sub onderdeel" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Selecteer onderdeel dat moet worden gebruikt in BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "BOM hoeveelheid voor dit BOM item" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Dit BOM item is optioneel" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Dit BOM item is verbruikbaar (het wordt niet bijgehouden in build orders)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Over tijd" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschatte hoeveelheid verspilling (absoluut of percentage)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Artikelregel referentie" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "BOM item notities" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Controle som" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "BOM lijn controle som" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Goedgekeurd" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Dit BOM item is goedgekeurd" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Wordt overgenomen" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Dit BOM item wordt overgenomen door BOMs voor variant onderdelen" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Voorraaditems voor variant onderdelen kunnen worden gebruikt voor dit BOM artikel" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Hoeveelheid moet een geheel getal zijn voor trackable onderdelen" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Onderdeel moet gespecificeerd worden" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "BOM Item vervangingen bewerken" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "Vervanging onderdeel kan niet hetzelfde zijn als het hoofddeel" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Bovenliggend BOM item" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Vervanging onderdeel" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Eerste deel" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Tweede deel" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Selecteer gerelateerd onderdeel" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "Opmerking voor deze relatie" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Onderdeel relatie kan niet worden gecreëerd tussen een deel en zichzelf" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Dubbele relatie bestaat al" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "Bovenliggende categorie" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Bovenliggende onderdeel categorie" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Subcategorieën" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Resultaten" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "Aantal resultaten opgenomen ten opzichte van deze template" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Inkooporder voor dit voorraadartikel" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Speculatieve hoeveelheid" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "Model Id" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "Bestand is geen afbeelding" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "Aantal onderdelen die deze sjabloon gebruiken" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Geen onderdelen geselecteerd" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Selecteer categorie" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Oorspronkelijk onderdeel" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Selecteer origineel onderdeel om te dupliceren" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Afbeelding kopiëren" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Afbeelding kopiëren van het oorspronkelijke onderdeel" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Copy BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" -msgstr "" +msgstr "Kopieer materiaal van het oorspronkelijke deel" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Parameters kopiëren" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Parameter data kopiëren van het originele onderdeel" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" -msgstr "" +msgstr "Notities kopiëren" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" -msgstr "" +msgstr "Kopieer notities van het originele deel" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Eerste voorraad hoeveelheid" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Specificeer de initiële voorraad hoeveelheid voor dit onderdeel. Als het aantal nul is, wordt er geen voorraad toegevoegd." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Eerste voorraad locatie" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Specificeer locatie van de eerste voorraad voor dit onderdeel" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" -msgstr "" +msgstr "Selecteer leverancier (of laat leeg om niets in te vullen)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" -msgstr "" +msgstr "Selecteer fabrikant (of laat leeg om niets in te vullen)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" -msgstr "" +msgstr "Fabrikant artikel nummer" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" -msgstr "" +msgstr "Geselecteerde onderneming is geen geldige leverancier" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" -msgstr "" +msgstr "Geselecteerde bedrijf is geen geldige fabrikant" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" -msgstr "" +msgstr "Fabrikant deel dat overeenkomt met deze MPN bestaat al" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" -msgstr "" +msgstr "Leveranciersdeel dat overeenkomt met deze SKU bestaat al" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Categorie naam" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Bouwen" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Voorraadartikelen" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" -msgstr "" +msgstr "Revisies" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Leveranciers" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Totale Voorraad" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "Niet toegewezen voorraad" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "Variant voorraad" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" -msgstr "" +msgstr "Dupliceer onderdeel" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" -msgstr "" +msgstr "Kopieer eerste gegevens uit een ander onderdeel" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Eerste voorraad" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Maak onderdeel met eerste voorraad" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" -msgstr "" +msgstr "Leveranciersgegevens" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" -msgstr "" +msgstr "Aanvankelijke leveranciersinformatie voor dit deel toevoegen" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" -msgstr "" +msgstr "Categorie parameters kopiëren" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" -msgstr "" +msgstr "Parameter sjablonen kopiëren uit geselecteerde onderdeel categorie" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" -msgstr "" +msgstr "Bestaande afbeelding" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" -msgstr "" +msgstr "Bestandsnaam van een bestaande onderdeel afbeelding" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" -msgstr "" +msgstr "Afbeeldingsbestand bestaat niet" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Limiteer de voorraadrapportage tot een bepaald onderdeel en eventuele variant onderdelen" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Limiteer de voorraadrapportage tot een bepaalde deelcategorie en alle onderliggende categorieën" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Limiteer de voorraadrapportage tot een bepaalde voorraadlocatie en alle onderliggende locaties" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Externe voorraad uitsluiten" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Voorraadartikelen op externe locaties uitsluiten" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" -msgstr "" +msgstr "Rapport genereren" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Genereer een bestand met berekende voorraad namen gegevens" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" -msgstr "" +msgstr "Onderdelen bijwerken" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Bijwerken van de opgegeven onderdelen met berekende voorraad gegevens" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Voorraadcontrole functionaliteit is niet ingeschakeld" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Achtergrondwerker check is gefaald" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" -msgstr "" +msgstr "Minimale prijs" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" -msgstr "" +msgstr "Overschrijf berekende waarde voor minimale prijs" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" -msgstr "" +msgstr "Minimale prijs valuta" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" -msgstr "" +msgstr "Maximale prijs" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" -msgstr "" +msgstr "Overschrijf de berekende waarde voor de maximale prijs" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" -msgstr "" +msgstr "Maximale prijs valuta" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" -msgstr "" +msgstr "Bijwerken" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" -msgstr "" +msgstr "Prijzen voor dit onderdeel bijwerken" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" -msgstr "" +msgstr "Kan niet converteren van de verstrekte valuta naar {default_currency}" + +#: part/serializers.py:1492 +msgid "Minimum price must not be greater than maximum price" +msgstr "Minimumprijs mag niet hoger zijn dan de maximale prijs" #: part/serializers.py:1495 -msgid "Minimum price must not be greater than maximum price" -msgstr "" - -#: part/serializers.py:1498 msgid "Maximum price must not be less than minimum price" -msgstr "" +msgstr "Maximale prijs mag niet lager zijn dan de minimale prijs" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" -msgstr "" +msgstr "Selecteer de bovenliggende assemblage" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" -msgstr "" +msgstr "Selecteer het onderdeel" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" -msgstr "" +msgstr "Kan bouwen" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" -msgstr "" +msgstr "Selecteer onderdeel om BOM van te kopiëren" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" -msgstr "" +msgstr "Bestaande gegevens verwijderen" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" -msgstr "" +msgstr "Verwijder bestaande BOM items voor het kopiëren" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" -msgstr "" +msgstr "Inclusief overgenomen" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Inclusief stuklijst BOM items die worden overgenomen van getemplated onderdelen" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" -msgstr "" +msgstr "Ongeldige regels overslaan" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" -msgstr "" +msgstr "Schakel deze optie in om ongeldige rijen over te slaan" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Kopieer vervangende onderdelen bij dubbele stuklijst BOM items" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Verwijder bestaande stuklijst BOM" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Verwijder bestaande stuklijst BOM items voor het uploaden" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Ongeldige hoeveelheid" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Minstens één stuklijst BOM artikel is vereist" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Onderdeel-id" #: part/stocktake.py:220 msgid "Part Description" @@ -6390,7 +6298,7 @@ msgstr "De beschikbare voorraad voor {part.name} is onder het ingestelde minimum #: plugin/api.py:175 msgid "Plugin cannot be deleted as it is currently active" -msgstr "" +msgstr "De plug-in kan niet worden verwijderd omdat deze momenteel actief is" #: plugin/base/action/api.py:33 msgid "No action specified" @@ -6408,7 +6316,7 @@ msgstr "Geen overeenkomst gevonden voor streepjescodegegevens" msgid "Match found for barcode data" msgstr "Overeenkomst gevonden voor streepjescodegegevens" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6505,75 +6413,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6638,7 +6546,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6672,41 +6580,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6937,7 +6845,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7156,7 +7064,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7282,67 +7190,67 @@ msgstr "Hoogte [mm]" msgid "Label height, specified in mm" msgstr "Label hoogte, gespecificeerd in mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7494,123 +7402,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "Filter op locatie diepte" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "Filter op topniveau locaties" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "Inclusief sublocaties in gefilterde resultaten" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Bovenliggende locatie" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filter op bovenliggende locatie" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Status code" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Externe locatie" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Boomstructuur onderdeel" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Vervaldatum voor" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Vervaldatum na" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Verouderd" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Hoeveelheid is vereist" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Geldig onderdeel moet worden opgegeven" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "Het opgegeven leveranciers onderdeel bestaat niet" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "Het leveranciersdeel heeft een pakketgrootte gedefinieerd, maar vlag use_pack_size niet ingesteld" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serienummers kunnen niet worden meegeleverd voor een niet traceerbaar onderdeel" @@ -7630,7 +7538,7 @@ msgstr "Standaardpictogram voor alle locaties waarvoor geen pictogram is ingeste msgid "Stock Location" msgstr "Voorraadlocatie" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Voorraadlocaties" @@ -7719,7 +7627,7 @@ msgstr "Selecteer een leveranciersdeel voor dit voorraadartikel" msgid "Where is this stock item located?" msgstr "Waar bevindt zich dit voorraaditem?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Het verpakken van dit voorraaditem is opgeslagen in" @@ -7735,7 +7643,7 @@ msgstr "Is dit item geïnstalleerd in een ander item?" msgid "Serial number for this item" msgstr "Serienummer van dit item" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Batch code voor dit voorraaditem" @@ -7791,136 +7699,136 @@ msgstr "Enkele eenheidsprijs van de aankoop op het moment van aankoop" msgid "Converted to part" msgstr "Omgezet tot onderdeel" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Onderdeel is niet ingesteld als traceerbaar" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Hoeveelheid moet heel getal zijn" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Hoeveelheid mag niet hoger zijn dan de beschikbare voorraad ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "Serienummers moeten als lijst worden opgegeven" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Hoeveelheid komt niet overeen met serienummers" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "Testsjabloon bestaat niet" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Voorraadartikel is toegewezen aan een verkooporder" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Voorraad item is geïnstalleerd in een ander item" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Voorraadartikel bevat andere producten" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Voorraadartikel is aan een klant toegewezen" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Voorraad item is momenteel in productie" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Geserialiseerde voorraad kan niet worden samengevoegd" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Dupliceer voorraadartikelen" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Voorraadartikelen moeten hetzelfde onderdeel verwijzen" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Voorraadartikelen moeten verwijzen naar dezelfde leveranciersdeel" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "De voorraad statuscodes moeten overeenkomen" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Voorraadartikel kan niet worden verplaatst omdat het niet op voorraad is" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "Voorraad item volgen" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Item notities" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Waarde moet voor deze test worden opgegeven" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Bijlage moet worden geüpload voor deze test" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "Ongeldige waarde voor deze test" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Test resultaat" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Test uitvoer waarde" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Test resultaat bijlage" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Test notities" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "Test station" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "De identificatie van het teststation waar de test werd uitgevoerd" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "Gestart" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "Het tijdstip van de start test" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Afgerond" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "Het tijdstip van de afgeronde test" @@ -7996,7 +7904,7 @@ msgstr "Gebruik pakketgrootte bij het toevoegen: de hoeveelheid gedefinieerd is msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Verlopen" @@ -8025,7 +7933,7 @@ msgstr "Hoeveelheid mag niet hoger zijn dan de beschikbare voorraad ({q})" msgid "Enter serial numbers for new items" msgstr "Voer serienummers voor nieuwe items in" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Locatie van bestemming" @@ -8102,79 +8010,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Sublocaties" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Artikel is toegewezen aan een verkooporder" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Artikel is toegewezen aan een productieorder" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8306,11 +8214,11 @@ msgstr "Naar klant verzonden" msgid "Returned from customer" msgstr "Geretourneerd door klant" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "U heeft geen rechten om deze pagina te bekijken." @@ -8318,47 +8226,39 @@ msgstr "U heeft geen rechten om deze pagina te bekijken." msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Pagina niet gevonden" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "De opgevraagde pagina bestaat niet" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8424,31 +8324,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8456,55 +8356,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Voorraadcontrole" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Inkooporders" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Verkooporders" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po index 45e5295246..74c3a17f18 100644 --- a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API-endepunkt ikke funnet" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Brukeren har ikke rettigheter til å se denne modellen" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-post (gjenta)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Bekreft e-postaddresse" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Du må angi samme e-post hver gang." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Den oppgitte primære e-postadressen er ikke gyldig." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Det oppgitte e-postdomenet er ikke godkjent." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registrering er deaktivert." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunne ikke konvertere {original} til {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" @@ -100,14 +92,14 @@ msgstr "Oppgi dato" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notater" @@ -120,42 +112,42 @@ msgstr "Verdi '{name}' vises ikke i mønsterformat" msgid "Provided value does not match required pattern: " msgstr "Angitt verdi samsvarer ikke med påkrevd mønster: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Tom serienummerstreng" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Duplisert serienummer" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppesekvens {group} overskrider tillatt antall ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Ingen serienummer funnet" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Antall unike serienumre ({len(serials)}) må samsvare med antallet ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Fjern HTML-tagger fra denne verdien" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Kinesisk (forenklet)" msgid "Chinese (Traditional)" msgstr "Kinesisk (tradisjonell)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-post" @@ -368,247 +360,205 @@ msgstr "Utvidelse-metadata" msgid "JSON metadata field, for use by external plugins" msgstr "JSON-metadatafelt, for bruk av eksterne utvidelser" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Uriktig formatert mønster" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Ukjent formatnøkkel spesifisert" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Mangler nødvendig formatnøkkel" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referansefeltet kan ikke være tomt" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referansen må samsvare påkrevd mønster" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referansenummeret er for stort" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Duplikatnavn kan ikke eksistere under samme overordnede" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Ugyldig valg" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Beskrivelse" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Beskrivelse (valgfritt)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Sti" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown-notater (valgfritt)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Strekkodedata" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Tredjeparts strekkodedata" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Strekkode-hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Unik hash av strekkodedata" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Eksisterende strekkode funnet" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serverfeil" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "En feil har blitt logget av serveren." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Må være et gyldig tall" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Velg valuta ut fra tilgjengelige alternativer" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Brukernavn" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Fornavn" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Fornavn på brukeren" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Etternavn" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Etternavn på brukeren" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "E-postadressen til brukeren" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personale" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Har denne brukeren personelltillatelser" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superbruker" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Er denne brukeren en superbruker" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktiv" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Er denne brukerkontoen aktiv" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Du har ikke tillatelse til å endre denne brukerrollen." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Bare superbrukere kan opprette nye brukere" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Din konto er opprettet." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Vennligst bruk funksjonen for å tilbakestille passord for å logge inn" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Velkommen til InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Ugyldig verdi" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datafil" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Velg datafil for opplasting" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Filen er for stor" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Ingen kolonner funnet i filen" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Ingen datarader funnet i fil" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Ingen datarader oppgitt" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Ingen datakolonner angitt" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Mangler påkrevd kolonne: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Dupliaktkolonne: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Eksternt bilde" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URLtil ekstern bildefil" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Nedlasting av bilder fra ekstern URL er ikke aktivert" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Overordnet produksjon" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategori" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Produksjonen må avbrytes før den kan slettes" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Forbruksvare" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Valgfritt" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Sammenstilling" @@ -756,7 +705,7 @@ msgstr "Sammenstilling" msgid "Tracked" msgstr "Spores" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Tildelt" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Tilgjengelig" msgid "Build Order" msgstr "Produksjonsordre" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Produksjonsordrer" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Produksjonsordre-referanse" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Salgsordrereferanse" msgid "SalesOrder to which this build is allocated" msgstr "Salgsordren denne produksjonen er tildelt til" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Kildeplassering" @@ -887,17 +836,17 @@ msgstr "Produksjonsstatus" msgid "Build status code" msgstr "Produksjonsstatuskode" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Batchkode" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Batchkode for denne produksjonsartikkelen" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Opprettelsesdato" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Brukeren som utstedte denne produksjonsordren" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarlig" @@ -947,7 +896,7 @@ msgstr "Bruker eller gruppe ansvarlig for produksjonsordren" msgid "External Link" msgstr "Ekstern lenke" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Lenke til ekstern URL" @@ -982,7 +931,7 @@ msgstr "Produksjonsordre {build} er fullført" msgid "A build order has been completed" msgstr "En produksjonsordre er fullført" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Serienumre må angis for sporbare deler" @@ -998,18 +947,18 @@ msgstr "Produksjonsartikkelen er allerede fullført" msgid "Build output does not match Build Order" msgstr "Produksjonsartikkelen samsvarer ikke med produksjonsordren" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Mengden må være større enn null" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Kvantitet kan ikke være større enn utgangsantallet" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Produksjonsartikkel {serial} har ikke bestått alle påkrevde tester" @@ -1022,11 +971,11 @@ msgstr "Produksjonsartikkel" msgid "Build object" msgstr "Produksjonsobjekt" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Mengden må være 1 for serialisert lagervare" msgid "Selected stock item does not match BOM line" msgstr "Valgt lagervare samsvarer ikke med BOM-linjen" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Lagervare" @@ -1094,366 +1043,366 @@ msgstr "Monteres i" msgid "Destination stock item" msgstr "Lagervare for montering" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Delnavn" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Etikett for prosjektkode" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Produksjonsartikkel" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Produksjonsartikkel samsvarer ikke med overordnet produksjon" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Resultatdel samsvarer ikke med produksjonsordredel" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Denne produksjonsartikkelen er allerede fullført" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Denne produksjonsartikkelen er ikke fullt tildelt" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Angi antall for produksjonsartikkel" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Heltallsverdi kreves for sporbare deler" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Heltallsverdi kreves, da stykklisten inneholder sporbare deler" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Serienummer" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Angi serienummer for produksjonsartikler" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Plassering" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Lagerplassering for produksjonsartikkel" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Automatisk tildeling av serienummer" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatisk tildeling av nødvendige artikler med tilsvarende serienummer" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Følgende serienummer finnes allerede eller er ugyldige" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "En liste over produksjonsartikler må oppgis" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Lagerplassering for skrotede produksjonsartikler" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Forkast tildelinger" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Forkast tildelinger fra skrotede produksjonsartikler" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Grunn for skroting av produksjonsartikler" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Plassering for ferdige produksjonsartikler" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Godta ufullstendig tildeling" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Fullfør artikler dersom lagerbeholdning ikke er fullt tildelt" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Bruk tildelt lagerbeholdning" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Bruk all lagerbeholdning som allerede er tildelt denne produksjonen" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Fjern ufullstendige artikler" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Slett alle produksjonsartikler som ikke er fullført" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Ikke tillatt" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Godta som brukt av denne produksjonsordren" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Fjern tildeling før produksjonsordren fullføres" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Overtildelt lagerbeholdning" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hvordan vil du håndtere ekstra lagervarer tildelt produksjonsordren" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Noen lagervarer har blitt overtildelt" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Godta ikke tildelt" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Godta at lagervarer ikke er fullt tildelt til denne produksjonsordren" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Nøvendig lagerbeholdning er ikke fullt tildelt" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Godta uferdig" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Godta at nødvendig antall fullførte produksjonsartikler ikke er nådd" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Nødvendig produksjonsmengde er ikke nådd" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Produksjonsordren har uferdige artikler" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Produksjonslinje" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Produksjonsartikkel" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Produksjonsartikkel må peke til samme produksjon" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Produksjonsartikkel" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part må peke på den samme delen som produksjonsordren" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Artikkelen må være på lager" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Tilgjengelig antall ({q}) overskredet" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Produksjonsartikkel må spesifiseres for tildeling av sporede deler" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Produksjonsartikkel kan ikke spesifiseres for tildeling av usporede deler" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Tildelingsartikler må oppgis" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerplassering hvor deler skal hentes (la stå tomt for å ta fra alle plasseringer)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Eksluderer plassering" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Ekskluder lagervarer fra denne valgte plasseringen" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Utskiftbar lagerbeholdning" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagervarer ved flere plasseringer kan brukes om hverandre" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Erstatning-lagerbeholdning" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Tilatt tildelling av erstatningsdeler" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Valgfrie artikler" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Tildel valgfrie BOM-artikler til produksjonsordre" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Kunne ikke starte auto-tideling" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "BOM-referanse" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Leverandørdel" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Tildelt antall" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Produksjonsreferanse" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Delkategorinavn" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Sporbar" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Nedarvet" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Tillat Varianter" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "BOM-artikkel" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Tildelt lagerbeholdning" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "I bestilling" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "I produksjon" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Ekstern lagerbeholdning" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Tilgjengelig lagerbeholdning" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Tilgjengelige erstatningsvarer" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Tilgjengelige variantvarer" @@ -1479,7 +1428,7 @@ msgstr "Kansellert" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Fullført" @@ -1583,10 +1532,10 @@ msgstr "Nøkkelstreng må være unik" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Bruker" @@ -1594,7 +1543,7 @@ msgstr "Bruker" msgid "Price break quantity" msgstr "Antall for prisbrudd" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Pris" @@ -1619,7 +1568,7 @@ msgstr "Navn for webhooken" msgid "Is this webhook active" msgstr "Er webhooken aktiv" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Sjetong" @@ -1683,14 +1632,14 @@ msgstr "Var arbeidet med denne meldingen ferdig?" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Tittel" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Lenke" @@ -1715,11 +1664,10 @@ msgstr "Les" msgid "Was this news item read?" msgstr "Er dette nyhetselementet lest?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Bilde" @@ -1767,7 +1715,7 @@ msgstr "Definisjon" msgid "Unit definition" msgstr "Enhetsdefinisjon" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Vedlegg" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Verdi" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Resultat" @@ -2165,1065 +2113,1081 @@ msgstr "Brukeren har ikke tillatelse tillatelse å opprette eller endre vedlegg msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Ingen gruppe" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "Nettstedets URL er låst av konfigurasjon" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Omstart kreves" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "En innstilling har blitt endret som krever en omstart av serveren" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Ventende migrasjoner" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Antall ventende databasemigreringer" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Navn på serverinstans" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Strengbeskrivelse for serverinstansen" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Bruk instansnavn" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Bruk instansnavnet på tittellinjen" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Begrens visning av 'om'" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Vis `about`-modal kun til superbrukere" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Firmanavn" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Internt firmanavn" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Base-URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Base-URL for serverinstans" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Standardvaluta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Velg grunnvalutaen for prisberegninger" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Støttede valutaer" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Liste over støttede valutakoder" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Oppdateringsintervall for valuta" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Hvor ofte valutakurser skal oppdateres (sett til null for å deaktiverere)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dager" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Valutaoppdaterings-plugin" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Valgt valutaoppdaterings-plugin" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Last ned fra URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Tillat nedlastning av eksterne bilder og filer fra ekstern URL" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Nedlastingsgrense" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maksimal tillatt nedlastingsstørrelse for eksternt bilde" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-Agent brukt for å laste ned fra URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Tillat overstyring av User-Agent brukt for å laste ned bilder og filer fra eksterne URLer (lå stå blank for standard)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Streng URL-validering" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Krev skjemaspesifikasjon ved validering av URLer" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Intervall for oppdateringssjekk" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Tidsintervall for å se etter oppdateringer(sett til null for å skru av)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatisk sikkerhetskopiering" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Aktiver automatisk sikkerhetskopiering av database og mediafiler" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Automatisk sikkerhetskopieringsintervall" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Angi antall dager mellom automatiske sikkerhetskopieringshendelser" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Slettingsintervall for oppgaver" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Bakgrunnsoppgaveresultater vil bli slettet etter antall angitte dager" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Slettingsintervall for feillogg" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Feilloggene vil bli slettet etter et angitt antall dager" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Slettingsintervall for varsler" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Brukervarsler slettes etter angitt antall dager" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Strekkodestøtte" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Aktiver støtte for strekkodeleser i webgrensesnittet" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Innlesingsforsinkelse for strekkode" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Tidsforsinkelse for behandling av strekkode" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Støtte for strekkodewebkamera" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Tillat strekkodelesning via webkamera i nettleseren" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Vis Strekkodedata" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Vis strekkodedata som tekst" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Delrevisjoner" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Aktiver revisjonsfeltet for Del" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulært uttrykksmønster for matching av internt delnummer" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Tilat duplikat av internt delnummer" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Tillat flere deler å dele samme interne delnummer" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Tillat redigering av internt delnummer" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Tillat endring av IPN-verdien mens du redigerer en del" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Kopier BOM-data fra del" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopier BOM-data som standard når du dupliserer en del" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Kopier parameterdata fra del" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Kopier parameterdata som standard ved duplisering av en del" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Kopier testdata fra del" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Kopier testdata som standard ved duplisering av en del" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kopier designmaler for kategoriparametere" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kopier parametermaler for kategori ved oppretting av en del" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Mal" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Deler er maler som standard" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Deler kan settes sammen fra andre komponenter som standard" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponent" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Deler kan bli brukt som underkomponenter som standard" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Kjøpbar" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Deler er kjøpbare som standard" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Salgbar" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Deler er salgbare som standard" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Deler er sporbare som standard" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuelle" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Deler er virtuelle som standard" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Vis import i visninger" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Vis importveiviseren i noen deler visninger" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Vis relaterte deler" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Vis relaterte deler i en del" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Innledende lagerbeholdningsdata" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Tillat oppretting av innledende lagerbeholdning når en ny del opprettes" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Innledende leverandørdata" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Tillat oppretting av innledende leverandørdata når en ny del opprettes" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Visningsformat for delnavn" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Format for å vise delnavnet" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Standardikon for delkategorier" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Standardikon for delkategorier (tomt betyr ingen ikon)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Tving parameterenheter" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Hvis det er angitt en enhet, skal parameterverdiene samsvare med de angitte enhetene" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Minimum antall desimalplasser for priser" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimum antall desimalplasser som skal vises når man gjengir prisdata" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Maksimalt antall desimalplasser for priser" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maksimalt antall desimalplasser som skal vises når man gjengir prisdata" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Bruk leverandørpriser" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Inkluder leverandørprisbrudd i beregninger av totalpriser" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Innkjøpshistorikkoverstyring" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historiske innkjøpspriser overstyrer leverandørprisnivåer" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Bruk lagervarepriser" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Bruk priser fra manuelt innlagte lagervarer for prisberegninger" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Lagervare prisalder" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Unnta lagervarer som er eldre enn dette antall dager fra prisberegninger" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Bruk Variantpriser" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Inkluder variantpriser i beregninger av totale priser" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Kun aktive varianter" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Bruk kun aktive variantdeler til beregning av variantprising" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervall for rekalkulering av priser" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Antall dager før delpriser blir automatisk oppdatert" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interne Priser" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Aktiver interne priser for deler" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Intern prisoverstyring" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Hvis tilgjengelig, overstyrer interne priser kalkulering av prisområde" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Aktiver etikettutskrift" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Aktiver utskrift av etiketter fra nettleseren" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Etikettbilde-DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI-oppløsning når når det genereres bildefiler for sending til utvidelser for etikettutskrift" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Aktiver Rapporter" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Aktiver generering av rapporter" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Feilsøkingsmodus" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Generer rapporter i feilsøkingsmodus (HTML-output)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Sidestørrelse" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Standard sidestørrelse for PDF-rapporter" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Globalt Unike Serienummer" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Serienummer for lagervarer må være globalt unike" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Automatisk tildeling av Serienummer" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Aumatisk fyll ut serienummer i skjemaer" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Slett oppbrukt lagerbeholdning" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Batchkodemal" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Mal for generering av standard batchkoder for lagervarer" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Lagerbeholdning utløper" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Aktiver funksjonalitet for utløp av lagerbeholdning" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Selg utløpt lagerbeholdning" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Tillat salg av utgått lagerbeholdning" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Foreldet lagerbeholdning tidsintervall" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Antall dager før lagervarer er ansett som foreldet før utløp" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Produsér Utløpt Lagerbeholdning" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Tillat produksjon med utløpt lagerbeholdning" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Kontroll over eierskap av lagerbeholdning" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Aktiver eierskap over lagerplasseringer og -varer" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Lagerplassering standard ikon" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Lagerplassering standard ikon (tomt betyr ingen ikon)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Vis installerte lagervarer" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Vis installerte lagervarer i lagertabeller" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Produksjonsordre-referansemønster" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Nødvendig mønster for å generere Produksjonsordre-referansefeltet" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Aktiver returordrer" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Aktiver returordrefunksjonalitet i brukergrensesnittet" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Returordre-referansemønster" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Rediger fullførte returordrer" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Tillat redigering av returordrer etter de er fullført" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Salgsordre-referansemønster" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Påkrevd mønster for å generere salgsordrereferansefelt" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Salgsordre standard fraktmetode" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Aktiver opprettelse av standard forsendelse med salgsordrer" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Rediger fullførte salgsordrer" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Tillat redigering av salgsordrer etter de har blitt sendt eller fullført" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Referansemønster for innkjøpsordre" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Obligatorisk mønster for generering av referansefelt for innkjøpsordre" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Rediger fullførte innkjøpsordre" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Tillat redigering av innkjøpsordre etter at de har blitt sendt eller fullført" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Autofullfør innkjøpsordrer" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automatisk merk innkjøpsordre som fullført når alle ordrelinjer er mottatt" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Aktiver passord glemt" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Ativer funskjon for glemt passord på innloggingssidene" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Aktiver registrering" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Aktiver egenregistrerting for brukerer på påloggingssidene" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Aktiver SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Aktiver SSO på innloggingssidene" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Aktiver SSO-registrering" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Aktiver selvregistrering via SSO for brukere på innloggingssiden" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "E-postadresse kreves" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Krevt at brukere angir e-post ved registrering" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Auto-utfyll SSO-brukere" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Fyll automatisk ut brukeropplysninger fra SSO-kontodata" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "E-post to ganger" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Spør brukeren om e-post to ganger ved registrering" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Passord to ganger" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Spør brukeren om passord to ganger ved registrering" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Tillatte domener" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Begrens registrering til bestemte domener (kommaseparert, begynner med @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Gruppe ved registrering" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Krev MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Brukere må bruke flerfaktorsikkerhet." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Sjekk utvidelser ved oppstart" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Sjekk at alle utvidelser er installert ved oppstart - aktiver i containermiljøer" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Aktiver URL-integrasjon" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Tillat utvidelser å legge til URL-ruter" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Aktiver navigasjonsintegrasjon" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Tillat utvidelser å integrere mot navigasjon" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Aktiver app-integrasjon" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Tillat utvidelser å legge til apper" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Aktiver tidsplanintegrasjon" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Tillat utvidelser å kjøre planlagte oppgaver" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Aktiver hendelsesintegrasjon" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Tillat utvidelser å reagere på interne hendelser" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Varetellingsfunksjonalitet" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Aktiver varetellingsfunksjonalitet for å registrere lagernivåer og regne ut lagerverdi" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Ekskluder eksterne plasseringer" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Eksluder lagervarer i eksterne plasseringer fra varetellinger" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Automatisk varetellingsperiode" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Antall dager mellom automatisk varetellingsregistrering (sett til null for å deaktivere)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Rapportslettingsintervall" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Varetellingsrapporter vil slettes etter angitt antall dager" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Vis brukernes fulle navn" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Vis brukernes fulle navn istedet for brukernavn" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "Intern del er aktiv" msgid "Supplier is Active" msgstr "Leverandør er aktiv" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Produsent" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Firma" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Lenke til adresseinformasjon (ekstern)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Produsentdeler" @@ -3744,8 +3708,8 @@ msgstr "Velg del" msgid "Select manufacturer" msgstr "Velg produsent" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "MPN" @@ -3773,7 +3737,7 @@ msgstr "Parameternavn" msgid "Parameter value" msgstr "Parameterverdi" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Enheter" @@ -3793,11 +3757,11 @@ msgstr "Pakkeenhet må være mer enn null" msgid "Linked manufacturer part must reference the same base part" msgstr "Den sammenkoblede produsentdelen må referere til samme basisdel" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Leverandør" @@ -3805,7 +3769,7 @@ msgstr "Leverandør" msgid "Select supplier" msgstr "Velg leverandør" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Leverandørens lagerbeholdningsenhet" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Leverandørens delbeskrivelse" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Leverandørens delbeskrivelse" msgid "Note" msgstr "Notat" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "grunnkostnad" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimum betaling (f.eks. lageravgift)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Emballasje" @@ -3861,7 +3825,7 @@ msgstr "Pakkeantall" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Totalt antall i en enkelt pakke. La være tom for enkeltenheter." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "flere" @@ -3885,15 +3849,15 @@ msgstr "Dato for siste oppdatering av tilgjengelighetsdata" msgid "Supplier Price Break" msgstr "Leverandørens prisbrudd" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Standardvaluta brukt for denne leverandøren" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Bedriftsnavn" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "På lager" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Nøkkel" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datafil" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Gyldig" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Mengde må være positiv" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kunde" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "SKU-kode" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Internt delnummer" @@ -4879,7 +4847,7 @@ msgstr "Velg lagerplassering for mottatte enheter" msgid "Enter batch code for incoming stock items" msgstr "Angi batchkode for innkommende lagervarer" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Utløpsdato" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "Returordrelinje" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Lagervare statuskode" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Innkommende innkjøpsordre" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Utgående salgsordre" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Lagervarer produsert av en produksjonsordre" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Lagervarer påkrevd for produksjonsordre" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Godkjenn hele Stykklisten" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Dette alternativet må være valgt" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Delkategori" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Delkategorier" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Standard plassering" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Standardplassering for deler i denne kategorien" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Strukturell" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Deler kan ikke tilordnes direkte til en strukturell kategori, men kan tilordnes til underkategorier." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Standard nøkkelord" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Standard nøkkelord for deler i denne kategorien" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ikon (valgfritt)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Du kan ikke gjøre denne delkategorien strukturell fordi noen deler allerede er tilordnet den!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Deler" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Ugyldig valg for overordnet del" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Delen '{self}' kan ikke brukes i BOM for '{parent}' (rekursiv)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Delen '{parent}' er brukt i BOM for '{self}' (rekursiv)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN må samsvare med regex-mønsteret {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Lagervare med dette serienummeret eksisterer allerede" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Duplikat av internt delnummer er ikke tillatt i delinnstillinger" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Del med dette Navnet, internt delnummer og Revisjon eksisterer allerede." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Deler kan ikke tilordnes strukturelle delkategorier!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Delnavn" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Er Mal" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Er delen en maldel?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Er delen en variant av en annen del?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variant av" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Delbeskrivelse (valgfritt)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Nøkkelord" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Del-nøkkelord for å øke synligheten i søkeresultater" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Delkategori" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Delrevisjon eller versjonsnummer" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisjon" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Hvor er denne artikkelen vanligvis lagret?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Standard leverandør" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Standard leverandørdel" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Standard utløp" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Utløpstid (i dager) for lagervarer av denne delen" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimal lagerbeholdning" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Minimum tillatt lagernivå" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Måleenheter for denne delen" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Kan denne delen bygges fra andre deler?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Kan denne delen brukes til å bygge andre deler?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Har denne delen sporing av unike artikler?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Kan denne delen kjøpes inn fra eksterne leverandører?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Kan denne delen selges til kunder?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Er denne delen aktiv?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Er dette en virtuell del, som et softwareprodukt eller en lisens?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Kontrollsum for BOM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Lagret BOM-kontrollsum" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Stykkliste sjekket av" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Stykkliste sjekket dato" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Opprettingsbruker" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Eier ansvarlig for denne delen" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Siste lagertelling" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Selg flere" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Valuta som brukes til å bufre prisberegninger" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimal BOM-kostnad" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Minste kostnad for komponentdeler" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maksimal BOM-kostnad" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Maksimal kostnad for komponentdeler" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimal innkjøpskostnad" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Minimal historisk innkjøpskostnad" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maksimal innkjøpskostnad" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Maksimal historisk innkjøpskostnad" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Minimal intern pris" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Minimal kostnad basert på interne prisbrudd" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Maksimal intern pris" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Maksimal kostnad basert på interne prisbrudd" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Minimal leverandørpris" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Minimumspris for del fra eksterne leverandører" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Maksimal leverandørpris" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Maksimalpris for del fra eksterne leverandører" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimal Variantkostnad" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Beregnet minimal kostnad for variantdeler" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maksimal Variantkostnad" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Beregnet maksimal kostnad for variantdeler" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimal kostnad" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Overstyr minstekostnad" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maksimal kostnad" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Overstyr maksimal kostnad" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Beregnet samlet minimal kostnad" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Beregnet samlet maksimal kostnad" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Minimal salgspris" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Minimal salgspris basert på prisbrudd" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Maksimal Salgspris" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Maksimal salgspris basert på prisbrudd" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Minimal Salgskostnad" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Minimal historisk salgspris" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Maksimal Salgskostnad" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Maksimal historisk salgspris" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Del for varetelling" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Antall" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Antall individuelle lagerenheter på tidspunkt for varetelling" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Total tilgjengelig lagerbeholdning på tidspunkt for varetelling" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Dato" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Dato for utført lagertelling" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Flere notater" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Bruker som utførte denne lagertellingen" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Minimal lagerkostnad" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Estimert minimal kostnad for lagerbeholdning" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maksimal lagerkostnad" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Estimert maksimal kostnad for lagerbeholdning" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Rapport" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Lagertellingsrapportfil (generert internt)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Antall deler" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Antall deler dekket av varetellingen" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Bruker som forespurte varetellingsrapporten" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "Valg må være unike" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Testnavn" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Angi et navn for testen" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Testbeskrivelse" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Legg inn beskrivelse for denne testen" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Aktivert" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Påkrevd" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Er det påkrevd at denne testen bestås?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Krever verdi" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Krever denne testen en verdi når det legges til et testresultat?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Krever vedlegg" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Krever denne testen et filvedlegg når du legger inn et testresultat?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Valg" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Sjekkboksparameter kan ikke ha enheter" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Sjekkboksparameter kan ikke ha valg" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Navn på parametermal må være unikt" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Parameternavn" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Fysisk enheter for denne parameteren" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Parameterbeskrivelse" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Sjekkboks" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Er dette parameteret en sjekkboks?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gyldige valg for denne parameteren (kommaseparert)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Ugyldig valg for parameterverdi" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Overordnet del" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Parametermal" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Parameterverdi" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Standardverdi" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Standard Parameterverdi" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Del-ID eller delnavn" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Del-ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Unik del-ID-verdi" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "Del -IPN" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Delens interne delnummerverdi" - -#: part/models.py:4130 -msgid "Level" -msgstr "Nivå" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "BOM-nivå" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Velg overordnet del" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Underordnet del" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Velg del som skal brukes i BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "BOM-antall for denne BOM-artikkelen" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Denne BOM-artikkelen er valgfri" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Denne BOM-artikkelen er forbruksvare (den spores ikke i produksjonsordrer)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Svinn" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Forventet produksjonssvinn (absolutt eller prosent)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "BOM-artikkelreferanse" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "BOM-artikkelnotater" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Kontrollsum" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "BOM-linje kontrollsum" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Godkjent" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Denne BOM-artikkelen er godkjent" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Arves" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Denne BOM-artikkelen er arvet fra stykkliste for variantdeler" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Lagervarer for variantdeler kan brukes for denne BOM-artikkelen" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Antall må være heltallsverdi for sporbare deler" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Underordnet del må angis" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "BOM-artikkel erstatning" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "Erstatningsdel kan ikke være samme som hoveddelen" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Overordnet BOM-artikkel" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Erstatningsdel" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Del 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Del 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Velg relatert del" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Del-forhold kan ikke opprettes mellom en del og seg selv" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Duplikatforhold eksisterer allerede" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Underkategorier" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Innkjøpsvaluta for lagervaren" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Ingen deler valgt" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Velg kategori" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Original Del" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Velg original del å duplisere" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Kopier Bilde" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Kopier bilde fra originaldel" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Kopier Stykkliste" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Kopier stykkliste fra original del" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Kopier parametere" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Kopier parameterdata fra originaldel" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Kopier notater" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Kopier notater fra originaldel" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Innledende lagerbeholdning" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Angi initiell lagermengde for denne delen. Hvis antall er null, er ingen lagerbeholdning lagt til." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Innledende lagerplassering" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Angi initiell lagerplasering for denne delen" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Velg leverandør (eller la stå tom for å hoppe over)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Velg produsent (eller la stå tom for å hoppe over)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Produsentens delenummer" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "Valgt firma er ikke en gyldig leverandør" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "Valgt firma er ikke en gyldig produsent" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "Produsentdel som matcher dette MPN-et, finnes allerede" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "Leverandørdel som matcher denne SKU-en, finnes allerede" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Kategorinavn" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Produseres" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Lagervarer" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Leverandører" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Total lagerbeholdning" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Dupliser del" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Kopier innledende data fra en annen del" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Innledende lagerbeholdning" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Lag en del med innledende lagermengde" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Leverandøropplysninger" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Legg til innledende leverandørinformasjon for denne delen" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Kopier kategoriparametre" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Kopier parametermaler fra valgt delkategori" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Eksisterende bilde" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "Filnavn for et eksisterende del-bilde" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "Bildefilen finnes ikke" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Begrens lagerbeholdningsrapport til en bestemt del og enhver variant av delen" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Begrens lagerbeholdningsrapport til en bestemt delkategori og alle underkategorier" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Begrens lagerbeholdningsrapport til en bestemt plasering og eventuelle underplasseringer" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Ekskluder ekstern lagerbeholdning" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Ekskluder lagervarer i eksterne lokasjoner" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Generer rapport" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Genererer rapport som inneholder beregnede lagerdata" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Oppdater deler" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Oppdater spesifiserte deler med beregnede lagerbeholdningsdata" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Lagerbeholdningsfunksjonalitet er ikke aktivert" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Sjekk av bakgrunnsarbeider mislyktes" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Minstepris" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Overstyr beregnet verdi for minimumspris" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Valuta for minstepris" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Makspris" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Overstyr beregnet verdi for maksimal pris" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Valuta for maksimal pris" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Oppdater" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Oppdater priser for denne delen" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Kan ikke konvertere fra gitte valutaer til {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "Minsteprisen kan ikke være større enn maksimal pris" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "Maksimal pris kan ikke være mindre enn minstepris" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Kan Produsere" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Velg del å kopiere BOM fra" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Fjern eksisterende data" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Fjern eksisterende BOM-artikler før kopiering" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Inkluder arvede" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Inkluder BOM-artikler som er arvet fra maldeler" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Hopp over ugyldige rader" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Aktiver dette alternativet for å hoppe over ugyldige rader" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Kopier erstatningsdeler" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Kopier erstatningsdeler når BOM-elementer dupliseres" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Nullstill eksisterende BOM" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Fjern eksisterende BOM-artikler før opplastning" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Ingen del-kolonne angitt" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Flere samsvarende deler funnet" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Ingen samsvarende del funnet" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Delen er ikke betegnet som en komponent" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Antall ikke oppgitt" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Ugyldig antall" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Minst en BOM-artikkel kreves" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Del-ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Ingen treff funnet for strekkodedata" msgid "Match found for barcode data" msgstr "Treff funnet for strekkodedata" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "Mottok ordreartikkelen" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Skannet strekkodedata" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "Innkjøpsordre å tildele artikler mot" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Innkjøpsordre er ikke ventende" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Innkjøpsordre å motta artikler mot" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Innkjøpsordren har ikke blitt sendt" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Plassering å motta deler til" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Kan ikke velge en strukturell plassering" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "Salgsordre å tildele artikler mot" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "Salgsordre er ikke ventende" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "Salgsordrelinje å tildele artikler mot" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "Salgsordre-forsendelse å tildele artikler mot" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "Forsendelsen er allerede levert" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Antall å tildele" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Gir innebygd støtte for strekkoder" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree-varsler" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Integrerte utgående varslingsmetoder" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Aktiver epostvarsler" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Tillat sending av e-post for hendelsesvarsler" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Aktiver Slack-varsler" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Tillat sending av Slack-kanalmeldinger for hendelsesvarsler" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack innkommende webhook" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL brukt til å sende meldinger til en Slack-kanal" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Åpne lenke" @@ -6936,7 +6844,7 @@ msgstr "Innebygd utvidelse" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Utvidelse" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Høyde [mm]" msgid "Label height, specified in mm" msgstr "Etiketthøyde, spesifisert i mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Snutt" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Rapportsnuttfil" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Filbeskrivelse for snutt" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Ressurs" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Rapportressursfil" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Ressursfilbeskrivelse" @@ -7493,123 +7401,123 @@ msgstr "part_image-taggen krever en Part-instans" msgid "company_image tag requires a Company instance" msgstr "company_image-taggen krever en Company-instans" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Statuskode" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Ekstern plassering" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Del-tre" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Utløpsdato før" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Utløpsdato etter" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Foreldet" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Antall kreves" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Gyldig del må oppgis" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "Oppgitt leverandørdel eksisterer ikke" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "Leverandørdelen har en pakkestørrelse definert, men flagget \"use_pack_size\" er ikke satt" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serienumre kan ikke angis for en ikke-sporbar del" @@ -7629,7 +7537,7 @@ msgstr "Standard ikom for alle plasseringer som ikke har satt et ikon (valgfritt msgid "Stock Location" msgstr "Lagerplassering" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Lagerplasseringer" @@ -7718,7 +7626,7 @@ msgstr "Velg en tilsvarende leverandørdel for denne lagervaren" msgid "Where is this stock item located?" msgstr "Hvor er denne lagervaren plassert?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Inpakningen denne lagervaren er lagret i" @@ -7734,7 +7642,7 @@ msgstr "Er denne artikkelen montert i en annen artikkel?" msgid "Serial number for this item" msgstr "Serienummer for denne artikkelen" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Batchkode for denne lagervaren" @@ -7790,136 +7698,136 @@ msgstr "Innkjøpspris per enhet på kjøpstidspunktet" msgid "Converted to part" msgstr "Konvertert til del" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Delen er ikke angitt som sporbar" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Antall må være heltall" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Antallet stemmer ikke overens med serienumrene" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Lagervare har blitt tildelt en salgsordre" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Lagervare er montert i en annen artikkel" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Lagervare inneholder andre artikler" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Lagervare har blitt tildelt til en kunde" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Lagervare er for tiden i produksjon" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Serialisert lagerbeholdning kan ikke slås sammen" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Duplisert lagervare" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Lagervarer må referere til samme del" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Lagervarer må referere til samme leverandørdel" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Lagerstatuskoder må være like" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagervare kan ikke flyttes fordi den ikke er på lager" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Oppføringsnotater" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Verdi må angis for denne testen" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Vedlegg må lastes opp for denne testen" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Testresultat" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Testens verdi" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Vedlegg til testresultat" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Testnotater" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "Bruk pakningsstørrelse når du legger til: antall definert er antall pa msgid "Supplier Part Number" msgstr "Leverandørens delnummer" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Utløpt" @@ -8024,7 +7932,7 @@ msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({q})" msgid "Enter serial numbers for new items" msgstr "Angi serienummer for nye artikler" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Til Lagerplassering" @@ -8101,79 +8009,79 @@ msgstr "Velg lagervarer for å endre status" msgid "No stock items selected" msgstr "Ingen lagervarer valgt" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Underplasseringer" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Delen må være salgbar" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Artikkelen er tildelt en salgsordre" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Artikkelen er tildelt en produksjonsordre" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Kunde å tilordne lagervarer" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "Valgt firma er ikke en kunde" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Lagervare-tildelignsnotater" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "En liste av lagervarer må oppgis" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Notater om lagersammenslåing" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Tillat forskjellige leverandører" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Tillat lagervarer med forskjellige leverandørdeler å slås sammen" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Tillat forskjellig status" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Tillat lagervarer med forskjellige statuskoder å slås sammen" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Minst to lagervarer må oppgis" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Lagervare primærnøkkel verdi" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Lager transaksjonsnotater" @@ -8305,11 +8213,11 @@ msgstr "Sendt til kunde" msgid "Returned from customer" msgstr "Returnert av kunde" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Tilgang nektet" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Du har ikke tillatelse til å se denne siden." @@ -8317,47 +8225,39 @@ msgstr "Du har ikke tillatelse til å se denne siden." msgid "Authentication Failure" msgstr "Autentiseringsfeil" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Du har blitt logget ut av InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Logg inn" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Side ikke funnet" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Forespurt side eksisterer ikke" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Intern serverfeil" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "%(inventree_title)s serveren reiste en intern feil" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Se feilloggen i admingrensesnittet for flere detaljer" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Nettstedet er i vedlikehold" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Siden er for øyeblikket i vedlikehold og bør være oppe igjen snart!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree-logo" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Omstart av server kreves" @@ -8423,31 +8323,31 @@ msgstr "Klikk på følgende lenke for å se denne delen" msgid "Minimum Quantity" msgstr "Minimum antall" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Brukere" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Velg hvilke brukere som er tilordnet denne gruppen" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Følgende brukere er medlemmer av flere grupper" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Personlig informasjon" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Tillatelser" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Viktige datoer" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Token er tilbakekalt" @@ -8455,55 +8355,55 @@ msgstr "Token er tilbakekalt" msgid "Token has expired" msgstr "Token har utløpt" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API-Token" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API-Tokener" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Tokennavn" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Egendefinert tokennavn" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Token utløpsdato" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Sist sett" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Sist gang tokenet ble brukt" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Tilbakekalt" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Administrator" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Lagertelling" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Innkjøpsordrer" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Salgsordre" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Returordrer" diff --git a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po index 24329fbc3b..55004a69e1 100644 --- a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Nie znaleziono punktu końcowego API" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Użytkownik nie ma uprawnień do przeglądania tego modelu" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Adres email (ponownie)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Potwierdzenie adresu email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Należy ponownie wpisać ten sam adres e-mail." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Podany podstawowy adres e-mail jest nieprawidłowy." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Podany e-mail domeny nie został zatwierdzony." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Rejestracja jest wyłączona." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nie udało się przeliczyć {original} na {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" @@ -100,14 +92,14 @@ msgstr "Wprowadź dane" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Uwagi" @@ -120,42 +112,42 @@ msgstr "Wartość '{name}' nie pojawia się w formacie wzoru" msgid "Provided value does not match required pattern: " msgstr "Podana wartość nie pasuje do wymaganego wzoru: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Pusty ciąg numeru seryjnego" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Podwójny numer seryjny" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Zakres grupy {group} przekracza dozwoloną ilość ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nie znaleziono numerów seryjnych" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Liczba unikalnych numerów seryjnych ({len(serials)}) musi odpowiadać ilości ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Usuń znaczniki HTML z tej wartości" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "chiński (uproszczony)" msgid "Chinese (Traditional)" msgstr "chiński (tradycyjny)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Adres E-Mail" @@ -368,247 +360,205 @@ msgstr "Wtyczka Metadane" msgid "JSON metadata field, for use by external plugins" msgstr "Pole metadanych JSON, do użycia przez wtyczki zewnętrzne" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Nieprawidłowo sformatowany wzór" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Określono nieznany format klucza" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Brak wymaganego formatu klucza" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Pole odniesienia nie może być puste" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Odniesienie musi być zgodne z wymaganym wzorem" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Numer odniesienia jest zbyt duży" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Duplikaty nazw nie mogą istnieć pod tym samym rodzicem" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Błędny wybór" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nazwa" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Opis (opcjonalny)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Ścieżka" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Notatki Markdown (opcjonalne)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Dane kodu kreskowego" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Dane kodu kreskowego stron trzecich" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hasz kodu kreskowego" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Unikalny hasz danych kodu kreskowego" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Znaleziono istniejący kod kreskowy" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Błąd serwera" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Waluta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Wybierz walutę z dostępnych opcji" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktywny" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Czy to konto użytkownika jest aktywne" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Nie masz uprawnień do zmiany tej roli użytkownika." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Tylko superużytkownicy mogą tworzyć nowych użytkowników" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Twoje konto zostało utworzone." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Zresetuj hasło" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Witamy w InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Nieprawidłowa wartość" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Plik danych" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Wybierz plik danych do przesłania" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Plik jest zbyt duży" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Nie znaleziono kolumn w pliku" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Nie znaleziono wierszy danych w pliku" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nie podano wierszy danych" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nie podano kolumn danych" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Brakuje wymaganej kolumny: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Zduplikowana kolumna: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Obrazek zewnętrzny" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "Adres URL zdalnego pliku obrazu" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Pobieranie obrazów ze zdalnego URL nie jest włączone" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Budowa nadrzędna" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Komponent" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategoria" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Kompilacja musi zostać anulowana, zanim będzie mogła zostać usunięta" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Materiał eksploatacyjny" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opcjonalne" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Złożenie" @@ -756,7 +705,7 @@ msgstr "Złożenie" msgid "Tracked" msgstr "Śledzony" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Przydzielono" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Dostępne" msgid "Build Order" msgstr "Zlecenie Budowy" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Zlecenia budowy" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Odwołanie do zamówienia sprzedaży" msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Lokalizacja źródła" @@ -887,17 +836,17 @@ msgstr "Status budowania" msgid "Build status code" msgstr "Kod statusu budowania" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Kod partii" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Data utworzenia" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Użytkownik, który wydał to zamówienie" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odpowiedzialny" @@ -947,7 +896,7 @@ msgstr "Użytkownik lub grupa odpowiedzialna za te zlecenie produkcji" msgid "External Link" msgstr "Link Zewnętrzny" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" @@ -982,7 +931,7 @@ msgstr "Kolejność kompilacji {build} została zakończona" msgid "A build order has been completed" msgstr "Kolejność kompilacji została zakończona" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "Budowanie wyjścia jest już ukończone" msgid "Build output does not match Build Order" msgstr "Skompilowane dane wyjściowe nie pasują do kolejności kompilacji" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Ilość nie może być większa niż ilość wyjściowa" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Wyjście budowy {serial} nie przeszło wszystkich testów" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "Zbuduj obiekt" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Ilość musi wynosić 1 dla serializowanych zasobów" msgid "Selected stock item does not match BOM line" msgstr "Wybrana pozycja magazynowa nie pasuje do pozycji w zestawieniu BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Element magazynowy" @@ -1094,366 +1043,366 @@ msgstr "Zainstaluj do" msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nazwa komponentu" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Numer seryjny" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Lokalizacja" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Automatycznie przydzielaj numery seryjne" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatycznie przydzielaj wymagane elementy z pasującymi numerami seryjnymi" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Poniższe numery seryjne już istnieją lub są nieprawidłowe" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Odrzuć przydziały" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Zaakceptuj niekompletną alokację" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Usuń produkcje, które nie zostały zakończone" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Niedozwolone" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Zaakceptuj jako zużyte przez zlecenie produkcji" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Nadmierny przydział zasobów" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Zaakceptuj nieprzydzielone" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Zaakceptuj, że przedmioty magazynowe nie zostały w pełni przypisane do tego zlecenia budowy" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Wymagany stan nie został w pełni przypisany" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Akceptuj niekompletne" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Towar musi znajdować się w magazynie" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Magazyn, z którego mają być pozyskane elementy (pozostaw puste, aby pobrać z dowolnej lokalizacji)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Wyklucz lokalizację" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Zastępczy magazyn" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Przedmiot opcjonalny" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Możliwość śledzenia" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Zezwalaj na warianty" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Element BOM" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "W Zamówieniu" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "W produkcji" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Dostępna ilość" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Anulowano" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Zakończono" @@ -1583,10 +1532,10 @@ msgstr "Ciąg musi być unikatowy" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Użytkownik" @@ -1594,7 +1543,7 @@ msgstr "Użytkownik" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Cena" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Łącze" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Obraz" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Załącznik" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Wartość" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Dane" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Wynik" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Brak grupy" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Wymagane ponowne uruchomienie" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Zmieniono ustawienie, które wymaga restartu serwera" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Oczekujące migracje" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Liczba oczekujących migracji bazy danych" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "Nazwa instancji serwera" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" +#: common/setting/system.py:180 +msgid "Instance ID" msgstr "" -#: common/setting/system.py:180 -msgid "Use instance name" -msgstr "Użyj nazwy instancji" - #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "Nazwa instancji serwera" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "Użyj nazwy instancji" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nazwa firmy" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Wewnętrzna nazwa firmy" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Bazowy URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Bazowy adres URL dla instancji serwera" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Domyślna waluta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Interwał aktualizacji waluty" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Jak często aktualizować kursy wymiany walut (ustaw zero aby wyłączyć)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dni" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Wtyczka aktualizacji waluty" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Pobierz z adresu URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Zezwól na pobieranie zewnętrznych obrazów i plików z zewnętrznego URL" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Limit rozmiaru pobierania" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Ścisła weryfikacja adresu URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Wymagaj specyfikacji schematu podczas sprawdzania poprawności adresów URL" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Częstotliwość sprawdzania aktualizacji" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Jak często aktualizować kursy wymiany walut (ustaw zero aby wyłączyć)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatyczna kopia zapasowa" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Włącz automatyczną kopię zapasową bazy danych i plików multimedialnych" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Interwał automatycznego tworzenia kopii zapasowych" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Określ liczbę dni między zdarzeniami automatycznej kopii zapasowej" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Interwał usuwania zadań" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Obsługa kodu kreskowego" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Wyrażenie regularne IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Zezwól na powtarzający się IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Zezwól na edycję IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Skopiuj BOM komponentu" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Szablon" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponent" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Możliwość zakupu" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Możliwość sprzedaży" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Części są domyślnie z możliwością sprzedaży" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Części są domyślnie z możliwością śledzenia" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Wirtualny" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Części są domyślnie wirtualne" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Pokaż powiązane części" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Użyj cennika dostawcy" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Nadpisanie historii zakupów" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Ceny wewnętrzne" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Włącz drukowanie etykiet" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Włącz drukowanie etykiet z interfejsu WWW" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "DPI etykiety" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Włącz raporty" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Tryb Debugowania" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Rozmiar strony" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Domyślna wielkość strony dla raportów PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Automatycznie wypełniaj zlecenia zakupu" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automatycznie oznacz zlecenia jako zakończone po odebraniu wszystkich pozycji" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Włącz opcję zapomnianego hasła" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Włącz funkcję zapomnianego hasła na stronach logowania" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Włącz rejestrację" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Włącz samodzielną rejestrację dla użytkowników na stronach logowania" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Włącz SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Włącz SSO na stronach logowania" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Adres e-mail jest wymagany" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Autouzupełnianie użytkowników SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automatycznie wypełnij dane użytkownika z danych konta SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "E-mail dwa razy" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich adres e-mail" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Hasło dwukrotnie" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich hasło" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grupuj przy rejestracji" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Wymuś MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Użytkownicy muszą używać zabezpieczeń wieloskładnikowych." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Sprawdź wtyczki przy starcie" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Włącz integrację URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Włącz wtyczki, aby dodać ścieżki URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Włącz integrację z aplikacją" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Włącz wtyczki, aby dodać aplikacje" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Włącz wtyczki, aby uruchamiać zaplanowane zadania" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Producent" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Firma" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Komponent producenta" @@ -3744,8 +3708,8 @@ msgstr "Wybierz część" msgid "Select manufacturer" msgstr "Wybierz producenta" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Nazwa parametru" msgid "Parameter value" msgstr "Wartość parametru" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Jednostki" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Dostawca" @@ -3805,7 +3769,7 @@ msgstr "Dostawca" msgid "Select supplier" msgstr "Wybierz dostawcę" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "Uwaga" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Opakowanie" @@ -3861,7 +3825,7 @@ msgstr "Ilość w opakowaniu" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "wielokrotność" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Domyślna waluta używana dla tego dostawcy" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Na stanie" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Klucz" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Plik danych" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Ważny" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Wartość musi być liczbą dodatnią" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Klient" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Data ważności" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Nadchodzące zlecenie zakupu" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Ta opcja musi być zaznaczona" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Kategoria komponentu" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Kategorie części" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Domyślna lokalizacja" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Domyślna lokalizacja dla komponentów w tej kategorii" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Domyślne słowa kluczowe" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Części" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Nieprawidłowy wybór dla części nadrzędnej" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nazwa komponentu" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Czy szablon" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Czy ta część stanowi szablon części?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Czy ta część jest wariantem innej części?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Wariant" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Słowa kluczowe" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Wersja" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Domyślne wygasanie" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimalny stan magazynowy" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Czy ten komponent może być zbudowany z innych komponentów?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Czy ta część może być użyta do budowy innych części?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Czy ta część jest aktywna?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Czy to wirtualna część, taka jak oprogramowanie lub licencja?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Ostatnia inwentaryzacja" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Aktywne" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Wymagane" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID komponentu" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Unikalny wartość ID komponentu" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN komponentu" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Wartość IPN części" - -#: part/models.py:4130 -msgid "Level" -msgstr "Poziom" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Zatwierdzone" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Część 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Część 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Podkategorie" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Waluta zakupu tego towaru" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Kopiuj obraz" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Kopiuj BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Kopiuj parametry" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Towary" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Dostawcy" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Duplikuj część" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Sprawdzenie robotnika w tle nie powiodło się" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Usuń istniejące dane" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Pomiń nieprawidłowe wiersze" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Wyczyść istniejący BOM" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Nie podano ilości" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Nieprawidłowa ilość" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID komponentu" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Nie znaleziono wyników dla danych kodu kreskowego" msgid "Match found for barcode data" msgstr "Znaleziono wyniki dla danych kodu kreskowego" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "Otrzymana pozycja zlecenia zakupu" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Zlecenie zakupu nie jest oczekujące" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Zlecenie zakupu nie zostało złożone" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "Wtyczka wbudowana" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Wtyczka" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Wysokość [mm]" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Wycinek" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Lokacje stanu magazynowego" @@ -7718,7 +7626,7 @@ msgstr "Wybierz pasującą część dostawcy dla tego towaru" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Ilość musi być liczbą całkowitą" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Notatki do wpisu" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Należy podać wartość dla tego testu" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Wynik testu" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Termin minął" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Podlokalizacje" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Część musi być dostępna do sprzedaży" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Wyślij do klienta" msgid "Returned from customer" msgstr "Zwrócony od klienta" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Odmowa dostępu" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Nie masz uprawnień do przeglądania tej strony." @@ -8317,47 +8225,39 @@ msgstr "Nie masz uprawnień do przeglądania tej strony." msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Zaloguj się" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Wymagane ponowne uruchomienie serwera" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "Minimalna ilość" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Użytkownicy" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Informacje osobiste" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Uprawnienia" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Ważne daty" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Zlecenia zakupu" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po index ec5f43b077..e81ec2f486 100644 --- a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Language: pt_PT\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint não encontrado" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Usuário não tem permissão para ver este modelo" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-mail (novamente)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Confirmação do endereço de email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Você deve digitar o mesmo e-mail todas as vezes." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "O endereço primário de e-mail não é válido." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "O domínio de e-mail providenciado não foi aprovado." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Cadastro está desativado." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Não foi possível converter {original} para {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Quantidade fornecida inválida" @@ -100,14 +92,14 @@ msgstr "Insira uma Data" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Anotações" @@ -120,42 +112,42 @@ msgstr "Valor '{name}' não está no formato correto" msgid "Provided value does not match required pattern: " msgstr "O valor fornecido não corresponde ao padrão exigido: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Número serial em branco" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Número de série duplicado" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Intervalo do grupo {group} excede a quantidade permitida ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nenhum número de série foi encontrado" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Números de série únicos ({len(serials)}) deve corresponder a quantidade ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Remova as \"tags\" HTML deste valor" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Chinês (Simplificado)" msgid "Chinese (Traditional)" msgstr "Chinês (Tradicional)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Email" @@ -368,247 +360,205 @@ msgstr "Metadados da Extensão" msgid "JSON metadata field, for use by external plugins" msgstr "Campo de metadados JSON, para uso por extensões externas" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Padrão formatado incorretamente" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Chave de formato desconhecida especificada" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Chave de formato obrigatória ausente" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "O campo de referência não pode ficar vazio" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "A referência deve corresponder ao padrão exigido" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "O número de referência é muito grande" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Nomes duplicados não podem existir sob o mesmo parental" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Escolha inválida" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Nome" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Descrição" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Descrição (opcional)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Caminho" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Notas Markdown (opcional)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Dados de código de barras" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Dados de código de barras de terceiros" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Hash de código de barras" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Hash exclusivo de dados de código de barras" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Código de barras existente encontrado" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Erro de servidor" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Log de erro salvo pelo servidor." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Preicsa ser um numero valido" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Moeda" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Selecione a Moeda nas opções disponíveis" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Nome de usuário" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Primeiro Nome" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Sobrenome" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Ativo" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Não tem permissões para alterar este papel do usuário." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Apenas superusuários podem criar novos usuários" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Sua conta foi criada." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Por favor, use a função de redefinir senha para acessar" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Bem-vindo(a) ao InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Valor inválido" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Arquivo de dados" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Selecione um arquivo de dados para enviar" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "O arquivo é muito grande" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Nenhuma coluna encontrada no arquivo" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Nenhuma linha de dados encontrada no arquivo" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nenhuma linha de dados fornecida" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nenhuma coluna de dados fornecida" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Falta a coluna obrigatória: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Coluna duplicada: \"{col}\"" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Imagens Remota" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL do arquivo de imagem remoto" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Baixar imagens de URL remota não está habilitado" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Produção Progenitor" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Peça" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Categoria" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Produção deve ser cancelada antes de ser deletada" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Consumível" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opcional" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Montagem" @@ -756,7 +705,7 @@ msgstr "Montagem" msgid "Tracked" msgstr "Monitorado" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Alocado" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Disponível" msgid "Build Order" msgstr "Ordem de Produção" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Ordens de Produções" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Referência do pedido de produção" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referência do pedido de venda" msgid "SalesOrder to which this build is allocated" msgstr "Pedido de Venda para qual esta produção está alocada" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Local de Origem" @@ -887,17 +836,17 @@ msgstr "Progresso da produção" msgid "Build status code" msgstr "Código de situação da produção" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Código de Lote" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Código do lote para esta saída de produção" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Criado em" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Usuário que emitiu este pedido de produção" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Responsável" @@ -947,7 +896,7 @@ msgstr "Usuário ou grupo responsável para este pedido de produção" msgid "External Link" msgstr "Link Externo" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link para URL externa" @@ -982,7 +931,7 @@ msgstr "O Pedido de produção {build} foi concluído!" msgid "A build order has been completed" msgstr "Um pedido de produção foi concluído" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Números de série devem ser fornecidos para peças rastreáveis" @@ -998,18 +947,18 @@ msgstr "Saída de produção já completada" msgid "Build output does not match Build Order" msgstr "Saída da produção não corresponde ao Pedido de Produção" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Quantidade deve ser maior que zero" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Quantidade não pode ser maior do que a quantidade de saída" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "O item de produção {serial} não passou todos os testes necessários" @@ -1022,11 +971,11 @@ msgstr "Item da linha de Produção" msgid "Build object" msgstr "Objeto de produção" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Quantidade deve ser 1 para estoque serializado" msgid "Selected stock item does not match BOM line" msgstr "Item estoque selecionado não coincide com linha da LDM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Item de estoque" @@ -1094,366 +1043,366 @@ msgstr "Instalar em" msgid "Destination stock item" msgstr "Destino do Item do Estoque" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Nome da Peça" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Saída da Produção" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Saída de produção não coincide com a produção progenitora" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Peça de saída não coincide com a peça da ordem de produção" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Esta saída de produção já foi concluída" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "A saída de produção não está completamente alocada" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Entre a quantidade da saída de produção" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Quantidade inteira necessária para peças rastreáveis" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Quantidade inteira necessária, pois a lista de materiais contém peças rastreáveis" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Números de Série" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Digite os números de série para saídas de produção" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Local" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Local de estoque para a produção" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Alocar Números de Série Automaticamente" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Os seguintes números de série já existem ou são inválidos" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Uma lista de saídas de produção deve ser fornecida" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Local de estoque para saídas recicladas" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Descartar alocações" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Descartar quaisquer alocações de estoque para saídas sucateadas" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Motivo para sucatear saída(s) de produção" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Local para saídas de produção concluídas" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Situação" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Aceitar Alocação Incompleta" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Concluir saídas se o estoque não tiver sido totalmente alocado" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Consumir Estoque Alocado" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Consumir qualquer estoque que já tenha sido alocado para esta produção" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Remover Saídas Incompletas" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Excluir quaisquer saídas de produção que não tenham sido completadas" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Não permitido" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Aceitar conforme consumido por esta ordem de produção" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Desatribua antes de completar este pedido de produção" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Estoque sobrealocado" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Como deseja manejar itens de estoque extras atribuídos ao pedido de produção" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Alguns itens de estoque foram sobrealocados" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Aceitar não alocados" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Aceitar que os itens de estoque não foram totalmente alocados para esta produção" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Estoque obrigatório não foi totalmente alocado" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Aceitar Incompleto" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Aceitar que o número requerido de saídas de produção não foi concluído" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Quantidade de produção requerida não foi concluída" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Pedido de produção tem saídas incompletas" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Linha de produção" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Saída da Produção" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Saída de produção deve indicar a mesma produção" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Item da linha de produção" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bin_item.part deve indicar a mesma peça do pedido de produção" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Item deve estar em estoque" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantidade disponível ({q}) excedida" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Saída de produção deve ser definida para alocação de peças rastreadas" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Saída de produção deve ser definida para alocação de peças não rastreadas" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Alocação do Item precisa ser fornecida" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Local de estoque onde peças serão extraídas (deixar em branco para qualquer local)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Local não incluso" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Não incluir itens de estoque deste local" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Estoque permutável" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Itens de estoque em múltiplos locais pode ser permutável" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Substituir Estoque" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Permitir alocação de peças substitutas" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Itens opcionais" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Alocar itens LDM opcionais para o pedido de produção" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Falha ao iniciar tarefa de auto-alocação" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Fornecedor da Peça" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Quantidade Alocada" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Rastreável" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Permitir variações" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Item LDM" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Estoque Alocado" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "No pedido" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "Em Produção" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Estoque Disponível" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Cancelado" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Completado" @@ -1583,10 +1532,10 @@ msgstr "A frase senha deve ser diferenciada" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Usuario" @@ -1594,7 +1543,7 @@ msgstr "Usuario" msgid "Price break quantity" msgstr "Quantidade de Parcelamentos" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Preço" @@ -1619,7 +1568,7 @@ msgstr "Nome para este webhook" msgid "Is this webhook active" msgstr "Este gancho web está ativo" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "O trabalho desta mensagem foi concluído?" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Título" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Ligação" @@ -1715,11 +1664,10 @@ msgstr "Lida" msgid "Was this news item read?" msgstr "Esta notícia do item foi lida?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Imagem" @@ -1767,7 +1715,7 @@ msgstr "Definição" msgid "Unit definition" msgstr "Definição de unidade" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Anexo" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Valor" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Dados" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Resultado" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Nenhum grupo" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "URL do site está bloqueada por configuração" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Reinicialização necessária" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Uma configuração que requer uma reinicialização do servidor foi alterada" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migrações pendentes" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Número de migrações pendentes na base de dados" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Nome da Instância do Servidor" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Descritor de frases para a instância do servidor" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Usar nome da instância" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Usar o nome da instância na barra de título" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Restringir a exibição 'sobre'" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Mostrar 'sobre' modal apenas para superusuários" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Nome da empresa" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Nome interno da Empresa" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL de Base" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL Base da instância do servidor" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Moeda Padrão" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Selecione a moeda base para cálculos de preços" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Moedas suportadas" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Lista de códigos de moeda suportados" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Intervalo de Atualização da Moeda" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Com que frequência atualizar as taxas de câmbio (defina como zero para desativar)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dias" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Extensão de Atualização de Moeda" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Extensão de Atualização de Moeda a utilizar" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Baixar do URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Permitir baixar imagens remotas e arquivos de URLs externos" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Limite de tamanho para baixar" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maior tamanho de imagem remota baixada permitida" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Usuário-agente utilizado para baixar da URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Permitir a substituição de imagens e arquivos usados baixados por usuário-agente (deixar em branco por padrão)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Validação rigorosa de URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Exigir especificação de esquema ao validar URLs" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Atualizar Intervalo de Verificação" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Frequência para verificar atualizações (defina como zero para desativar)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Cópia de Segurança Automática" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Ativar cópia de segurança automática do banco de dados e arquivos de mídia" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Intervalo de Backup Automático" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Especificar o número de dia entre as cópias de segurança" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Intervalo para Excluir da Tarefa" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Os resultados da tarefa no plano de fundo serão excluídos após um número especificado de dias" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Intervalo para Excluir do Registro de Erro" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Registros de erros serão excluídos após um número especificado de dias" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Intervalo para Excluir de Notificação" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Notificações de usuários será excluído após um número especificado de dias" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Suporte aos códigos de barras" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Ativar suporte a leitor de código de barras na interface web" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Atraso na entrada de código de barras" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Tempo de atraso de processamento de entrada de barras" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Suporte a código de barras via Câmera" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Permitir escanear código de barras por câmera pelo navegador" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Revisões de peças" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Habilitar campo de revisão para a Peça" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Permitir a exclusão da Montagem" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Permitir a remoção de peças usadas em uma montagem" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Regex IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Padrão de expressão regular adequado para Peça IPN" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Permitir Duplicação IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Permitir que várias peças compartilhem o mesmo IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Permitir Edição IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Permitir trocar o valor do IPN enquanto se edita a peça" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Copiar dados da LDM da Peça" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Copiar dados da LDM por padrão quando duplicar a peça" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Copiar Dados de Parâmetro da Peça" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Copiar dados de parâmetros por padrão quando duplicar uma peça" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Copiar Dados Teste da Peça" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Copiar dados de teste por padrão quando duplicar a peça" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Copiar Parâmetros dos Modelos de Categoria" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Copiar parâmetros do modelo de categoria quando criar uma peça" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Modelo" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Peças são modelos por padrão" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Peças podem ser montadas a partir de outros componentes por padrão" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Componente" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Peças podem ser usadas como sub-componentes por padrão" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Comprável" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Peças são compráveis por padrão" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Vendível" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Peças vão vendíveis por padrão" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Peças vão rastreáveis por padrão" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtual" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Peças são virtuais por padrão" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Mostrar Importações em Visualizações" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Exibir o assistente de importação em algumas visualizações de partes" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Mostra peças relacionadas" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Mostrar peças relacionadas para uma peça" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Dados Iniciais de Estoque" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Permitir Criação de estoque inicial quando adicional uma nova peça" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Dados Iniciais de Fornecedor" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Permitir criação de dados iniciais de fornecedor quando adicionar uma nova peça" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Formato de Exibição do Nome da Peça" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formato para exibir o nome da peça" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Ícone de Categoria de Peça Padrão" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Ícone padrão de categoria de peça (vazio significa sem ícone)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Forçar Unidades de Parâmetro" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Se as unidades são fornecidas, os valores do parâmetro devem corresponder às unidades especificadas" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Mínimo de Casas Decimais do Preço" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Mínimo número de casas decimais a exibir quando renderizar dados de preços" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Máximo Casas Decimais de Preço" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Número máximo de casas decimais a exibir quando renderizar dados de preços" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Usar Preços do Fornecedor" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Incluir quebras de preço do fornecedor nos cálculos de preços globais" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Sobrescrever histórico de compra" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Histórico do pedido de compra substitui os intervalos dos preços do fornecedor" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Usar Preços do Item em Estoque" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Usar preço inserido manualmente no estoque para cálculos de valores" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Idade do preço do Item em Estoque" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Não incluir itens em estoque mais velhos que este número de dias no cálculo de preços" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Usar Preço Variável" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Incluir preços variáveis nos cálculos de valores gerais" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Apenas Ativar Variáveis" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Apenas usar peças variáveis ativas para calcular preço variáveis" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Intervalo de Reconstrução de Preços" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Número de dias antes da atualização automática dos preços das peças" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Preços Internos" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Habilitar preços internos para peças" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Sobrepor Valor Interno" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Se disponível, preços internos sobrepõe variação de cálculos de preço" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Ativar impressão de etiquetas" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Ativar impressão de etiqueta pela interface da internet" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "DPI da Imagem na Etiqueta" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Resolução de DPI quando gerar arquivo de imagens para fornecer à extensão de impressão de etiquetas" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Habilitar Relatórios" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Ativar geração de relatórios" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Modo de depuração" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Gerar relatórios em modo de depuração (saída HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Relatório de erros" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Registro de erros que ocorrem ao gerar relatórios" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Tamanho da página" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Tamanho padrão da página PDF para relatórios" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Seriais Únicos Globais" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Números de série para itens de estoque devem ser globalmente únicos" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Preenchimento automático de Números Seriais" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Preencher números de série automaticamente no formulário" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Excluir Estoque Esgotado" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Determina o comportamento padrão quando um item de estoque é esgotado" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Modelo de Código de Lote" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Modelo para gerar códigos de lote padrão para itens de estoque" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Validade do Estoque" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Ativar função de validade de estoque" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Vender estoque expirado" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Permitir venda de estoque expirado" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Tempo de Estoque Inativo" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Número de dias em que os itens em estoque são considerados obsoleto antes de vencer" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Produzir Estoque Vencido" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Permitir produção com estoque vencido" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Controle de propriedade do estoque" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Ativar controle de propriedade sobre locais e itens de estoque" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Ícone padrão do local de estoque" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Ícone padrão de local de estoque (vazio significa sem ícone)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Mostrar Itens de Estoque Instalados" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Exibir itens de estoque instalados nas tabelas de estoque" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Verificar BOM ao instalar itens" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Itens de estoque instalados devem existir na BOM para a peça parente" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Permitir Transferência Fora do Estoque" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Permitir que os itens que não estão em estoque sejam transferidos entre locais de estoque" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Modelo de Referência de Pedidos de Produção" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Modelo necessário para gerar campo de referência do Pedido de Produção" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Requer Proprietário Responsável" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Um proprietário responsável deve ser atribuído a cada ordem" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Bloquear até os Testes serem Aprovados" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Impedir que as saídas da produção sejam concluídas até que todos os testes sejam aprovados" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Ativar Pedidos de Devolução" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Ativar funcionalidade de pedido de retorno na interface do usuário" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Modelo de Referência de Pedidos de Devolução" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Editar os Pedidos de Devolução Concluídos" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Permitir a edição de pedidos de devolução após serem enviados ou concluídos" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Modelo de Referência de Pedidos de Venda" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Modelo necessário para gerar campo de referência do Pedido de Venda" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Envio Padrão de Pedidos de Venda" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Habilitar criação de envio padrão com Pedidos de Vendas" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Editar os Pedidos de Vendas concluídos" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Permitir a edição de pedidos de vendas após serem enviados ou concluídos" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Modelo de Referência de Pedidos de Compras" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Modelo necessário para gerar campo de referência do Pedido de Compra" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Editar Pedidos de Compra Concluídos" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Permitir a edição de pedidos de compras após serem enviados ou concluídos" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Autocompletar Pedidos de Compra" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Marcar automaticamente os pedidos de compra como concluídos quando todos os itens de linha forem recebidos" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Habitar esquecer senha" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Habilitar a função \"Esqueci minha senha\" nas páginas de acesso" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Habilitar cadastro" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Ativar auto-registro para usuários na página de entrada" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Ativar SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Ativar SSO na página de acesso" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Ativar registro SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Ativar auto-registro por SSO para usuários na página de entrada" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email obrigatório" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Exigir do usuário o e-mail no cadastro" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Auto-preencher usuários SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Preencher automaticamente os detalhes do usuário a partir de dados da conta SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Enviar email duplo" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "No registro pedir aos usuários duas vezes pelo email" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Senha duas vezes" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "No registro pedir aos usuários duas vezes pela senha" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Domínios permitidos" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Restringir registros a certos domínios (separados por vírgula, começando com @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grupo no cadastro" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Forçar AMF" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Os usuários devem usar uma segurança multifator." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Checar extensões no início" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Checar que todas as extensões instaladas no início — ativar em ambientes de contêineres" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Verificar por atualizações de plugin" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Habilitar verificações periódicas de atualizações para plugins instalados" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Ativar integração URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Ativar extensão para adicionar rotas URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Ativar integração de navegação" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Ativar extensões para integrar à navegação" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Ativa integração com aplicativo" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Ativar extensões para adicionar aplicativos" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Ativar integração do calendário" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Ativar extensões para executar tarefas agendadas" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Ativar integração de eventos" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Ativar extensões para responder a eventos internos" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funcionalidade de Balanço do Inventário" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Ativar funcionalidade de balanço para gravar níveis de estoque e calcular seu valor" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Excluir Locais Externos" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Excluir itens de estoque em locais externos dos cálculos do estoque" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Período de Balanço Automático" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Número de dias entre gravação do balanço de estoque (coloque zero para desativar)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Intervalo para Excluir o Relatório" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Relatórios de balanço serão apagados após um número de dias especificado" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Mostrar nomes completos dos usuários" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Mostrar Nomes Completos em vez de Nomes de Usuário" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Fabricante" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Empresa" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Link para as informações do endereço (externo)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Peça do Fabricante" @@ -3744,8 +3708,8 @@ msgstr "Selecionar peça" msgid "Select manufacturer" msgstr "Selecionar fabricante" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "NPF" @@ -3773,7 +3737,7 @@ msgstr "Nome do parâmetro" msgid "Parameter value" msgstr "Valor do Parâmetro" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Unidades" @@ -3793,11 +3757,11 @@ msgstr "Unidades de pacote deve ser maior do que zero" msgid "Linked manufacturer part must reference the same base part" msgstr "Parte do fabricante vinculado deve fazer referência à mesma peça base" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Fornecedor" @@ -3805,7 +3769,7 @@ msgstr "Fornecedor" msgid "Select supplier" msgstr "Selecione o fornecedor" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Unidade de reserva de estoque fornecedor" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Descrição da peça fornecedor" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Descrição da peça fornecedor" msgid "Note" msgstr "Anotação" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "preço base" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Taxa mínima (ex.: taxa de estoque)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Embalagem" @@ -3861,7 +3825,7 @@ msgstr "Quantidade de embalagens" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Quantidade total fornecida em um único pacote. Deixe em branco para itens únicos." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "múltiplo" @@ -3885,15 +3849,15 @@ msgstr "Data da última atualização da disponibilidade dos dados" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Moeda padrão utilizada para este fornecedor" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Em Estoque" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Chave" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Arquivo de dados" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Válido" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Quantidade deve ser um número positivo" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Cliente" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "Código (SKU)" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Numero interno do produto" @@ -4879,7 +4847,7 @@ msgstr "Selecione o local de destino para os itens recebidos" msgid "Enter batch code for incoming stock items" msgstr "Digite o código do lote para itens de estoque recebidos" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Data de validade" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "Devolver item do pedido" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Código de estado do item estoque" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Pedido de compra recebido" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Pedidos de Venda Feitos" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Estoque produzido pelo Pedido de Produção" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Estoque obrigatório para Pedido de Produção" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Validar a Lista de Materiais completa" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Esta opção deve ser selecionada" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Categoria da Peça" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Categorias de Peça" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Local Padrão" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Local padrão para peças desta categoria" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Estrutural" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Peças não podem ser diretamente atribuídas a uma categoria estrutural, mas podem ser atribuídas a categorias filhas." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Palavras-chave Padrão" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Palavras-chave padrão para peças nesta categoria" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ícone" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ícone (opcional)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Você não pode tornar esta categoria em estrutural, pois, algumas partes já estão alocadas!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Peças" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Escolha inválida para peça parental" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Peça '{self}' não pode ser utilizada na BOM para '{parent}' (recursiva)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Peça '{parent}' é usada na BOM para '{self}' (recursiva)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN deve corresponder ao padrão regex {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Item em estoque com este número de série já existe" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Não é permitido duplicar IPN em configurações de partes" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Uma parte com este Nome, IPN e Revisão já existe." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Peças não podem ser atribuídas a categorias estruturais!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Nome da peça" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "É um modelo" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Esta peça é uma peça modelo?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Esta peça é variante de outra peça?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Descrição da peça (opcional)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Palavras chave" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Palavras-chave para melhorar a visibilidade nos resultados da pesquisa" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Categoria da Peça" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Revisão de peça ou número de versão" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revisão" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Onde este item é armazenado normalmente?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Fornecedor Padrão" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Fornecedor padrão da peça" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Validade Padrão" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Validade (em dias) para itens do estoque desta peça" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Estoque Mínimo" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Nível mínimo de estoque permitido" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Unidade de medida para esta peça" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Essa peça pode ser construída a partir de outras peças?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Essa peça pode ser usada para construir outras peças?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Esta parte tem rastreamento para itens únicos?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Esta peça pode ser comprada de fornecedores externos?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Esta peça pode ser vendida a clientes?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Esta parte está ativa?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Esta é uma peça virtual, como um software de produto ou licença?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Soma de Verificação da LDM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Soma de verificação da LDM armazenada" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "LDM conferida por" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "LDM verificada no dia" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Criação de Usuário" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Proprietário responsável por esta peça" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Último Balanço" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Venda múltipla" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Moeda usada para armazenar os cálculos de preços" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Custo Mínimo da LDM" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Custo mínimo das peças componentes" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Custo Máximo da LDM" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Custo máximo das peças componentes" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Custo Mínimo de Compra" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Custo mínimo histórico de compra" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Custo Máximo de Compra" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Custo máximo histórico de compra" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Preço Interno Mínimo" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Custo mínimo baseado nos intervalos de preço internos" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Preço Interno Máximo" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Custo máximo baseado nos intervalos de preço internos" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Preço Mínimo do Fornecedor" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Preço mínimo da peça de fornecedores externos" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Preço Máximo do Fornecedor" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Preço máximo da peça de fornecedores externos" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Custo Mínimo variável" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Custo mínimo calculado das peças variáveis" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Custo Máximo Variável" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Custo máximo calculado das peças variáveis" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Custo Mínimo" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Sobrepor o custo mínimo" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Custo Máximo" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Sobrepor o custo máximo" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Custo total mínimo calculado" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Custo total máximo calculado" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Preço Mínimo de Venda" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Preço mínimo de venda baseado nos intervalos de preço" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Preço Máximo de Venda" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Preço máximo de venda baseado nos intervalos de preço" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Custo Mínimo de Venda" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Preço histórico mínimo de venda" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Custo Máximo de Venda" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Preço histórico máximo de venda" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Peça para Balanço" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Total de Itens" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Número de entradas de estoques individuais no momento do balanço" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Estoque total disponível no momento do balanço" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Data" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Data de realização do balanço" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Notas adicionais" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Usuário que fez o balanço" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Custo Mínimo de Estoque" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Custo mínimo estimado de estoque disponível" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Custo Máximo de Estoque" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Custo máximo estimado de estoque disponível" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Reportar" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Arquivo de Relatório de Balanço (gerado internamente)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Contagem de Peças" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Número de peças cobertas pelo Balanço" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Usuário que solicitou este relatório de balanço" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "Escolhas devem ser únicas" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Nome de Teste" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Insira um nome para o teste" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Descrição do Teste" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Digite a descrição para este teste" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Habilitado" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Requerido" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Este teste é obrigatório passar?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Requer Valor" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Este teste requer um valor ao adicionar um resultado de teste?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Anexo obrigatório" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Este teste requer um anexo ao adicionar um resultado de teste?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Escolhas" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Parâmetros da caixa de seleção não podem ter unidades" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Os parâmetros da caixa de seleção não podem ter escolhas" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Nome do modelo de parâmetro deve ser único" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Nome do Parâmetro" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Unidades físicas para este parâmetro" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Descrição do Parâmetro" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Caixa de seleção" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Este parâmetro é uma caixa de seleção?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Opções válidas para este parâmetro (separadas por vírgulas)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Escolha inválida para valor do parâmetro" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Peça Paternal" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Modelo de parâmetro" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Valor do Parâmetro" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Valor Padrão" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Valor Padrão do Parâmetro" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID da peça ou nome da peça" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID da Peça" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Valor exclusivo do ID de peça" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN da Peça" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Valor da parte IPN" - -#: part/models.py:4130 -msgid "Level" -msgstr "Nível" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Nível da LDM" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Selecione a Peça Parental" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Sub peça" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Selecionar peça a ser usada na LDM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Quantidade de LDM para este item LDM" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Este item LDM é opcional" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Este item LDM é consumível (não é rastreado nos pedidos de construção)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Excedente" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Quantidade estimada de desperdício (absoluto ou porcentagem)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Referência do Item LDM" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Notas do Item LDM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Soma de verificação" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Soma de Verificação da LDM da linha" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Validado" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "O item da LDM foi validado" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Obtém herdados" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este item da LDM é herdado por LDMs para peças variáveis" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Itens de estoque para as peças das variantes podem ser usados para este item LDM" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Quantidade deve ser valor inteiro para peças rastreáveis" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Sub peça deve ser especificada" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Substituir Item da LDM" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "A peça de substituição não pode ser a mesma que a peça mestre" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Item LDM Parental" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Substituir peça" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Selecionar Peça Relacionada" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Relacionamento da peça não pode ser criada com ela mesma" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Relação duplicada já existe" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Categoria de peça pai" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Sub-categorias" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Moeda de compra deste item de estoque" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Nenhuma parte selecionada" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Selecionar categoria" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Peça Original" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Selecione a peça original para duplicar" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Copiar imagem" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Copiar imagem da peça original" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Copiar LDM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Copiar lista de materiais da peça original" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Copiar Parâmetros" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Copiar dados do parâmetro da peça original" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Copiar Notas" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Copiar imagem da peça original" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Quantidade Inicial de Estoque" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Especificar a quantidade inicial de estoque para a peça. Se for zero, nenhum estoque é adicionado." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Local Inicial do Estoque" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Especifique o local do estoque inicial para esta Peça" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Selecione o fornecedor (ou deixe em branco para pular)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Selecione fabricante (ou deixe em branco para pular)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Número de Peça do Fabricante" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "A empresa selecionada não é um fornecedor válido" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "A empresa selecionada não é um fabricante válido" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "A peça do fabricante que corresponde a essa MPN já existe" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "A peça do fornecedor que corresponde a essa SKU já existe" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Nome da Categoria" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Produzindo" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Itens de Estoque" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Fornecedores" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Estoque Total" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Peça duplicada" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Copiar dados iniciais de outra peça" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Estoque inicial" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Criar peça com a quantidade inicial de estoque" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Informações do Fornecedor" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Adicionar informação inicial de fornecedor para esta peça" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Copiar Parâmetros da Categoria" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Copiar modelos de parâmetros a partir de categoria de peça selecionada" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Imagem Existente" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "Nome de arquivo de uma imagem de peça existente" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "A imagem não existe" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Limitar o relatório de balanço a uma determinada peça e quaisquer peças variantes" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Limitar o relatório de balanço a uma determinada categoria, e qualquer peças filhas" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Limitar o relatório de balanço a um determinado local de estoque, e qualquer local filho" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Excluir Estoque externo" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Excluir itens de estoque em locais externos" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Gerar relatório" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Gerar arquivo de relatório contendo dados de estoque calculados" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Atualizar Peças" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Atualizar peças especificadas com dados de estoque calculados" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Função de Balanço de Estoque não está ativada" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Falha em verificar o histórico do trabalhador" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Preço Mínimo" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Sobrepor valor calculado para preço mínimo" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Moeda do preço mínimo" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Preço Máximo" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Sobrepor valor calculado para preço máximo" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Moeda do preço máximo" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Atualizar" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Atualizar preços desta peça" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Não foi possível converter das moedas fornecidas para {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "Preço mínimo não pode ser maior que o preço máximo" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "Preço máximo não pode ser menor que o preço mínimo" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Pode Produzir" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Selecionar peça para copiar a LDM" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Remover Dado Existente" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Remova itens LDM existentes antes de copiar" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Incluir Herdados" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Incluir itens LDM que são herdados de peças modelo" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Pular Linhas inválidas" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Habilitar esta opção para pular linhas inválidas" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Copiar Peças Substitutas" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Copiar peças de substitutas quando duplicar itens de LDM" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Limpar LDM Existente" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Apagar itens LDM existentes antes de carregar" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Nenhuma coluna de peça especificada" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Múltiplas peças correspondentes encontradas" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Nenhuma peça correspondente encontrada" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Peça não está designada como componente" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Quantidade não foi fornecida" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Quantidade Inválida" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Pelo menos um item LDM é necessário" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID da Peça" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Nenhum resultado encontrado para os dados do código de barras" msgid "Match found for barcode data" msgstr "Coincidência encontrada para dados de código de barras" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "Item de linha do pedido de compra recebido" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Dados do código de barras lido" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "Pedido de compra para alocar itens contra" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "O pedido de compra não está pendente" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Pedido de compra para receber itens contra" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "O pedido de compra não foi realizado" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Localização para receber itens" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Não é possível selecionar um local estrutural" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "Pedido de compra para alocar itens contra" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "O pedido de venda não está pendente" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "Item de linha do pedido de venda para alocar itens contra" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "Envio do pedido de venda para alocar itens contra" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "O envio já foi entregue" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Quantidade a alocar" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Fornece suporte nativo para códigos de barras" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Notificações do InvenTree" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Métodos de envio de notificação integrados" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Habilitar notificações por email" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Permitir enviar emails para notificações de eventos" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Habilitar notificações por Slack" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Permitir envio de notificações de eventos pelo canal de mensagens do slack" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Link do gancho de entrada do Slack" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL usada para enviar mensagens para um canal do Slack" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Abrir link" @@ -6936,7 +6844,7 @@ msgstr "Plugin embutido" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Extensões" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Itens" @@ -7281,67 +7189,67 @@ msgstr "Altura [mm]" msgid "Label height, specified in mm" msgstr "Altura da Etiqueta, em mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Progresso" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Recorte" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Relatar arquivo de recorte" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Descrição do arquivo de recorte" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Patrimônio" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Reportar arquivo de ativos" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Descrição do arquivo de ativos" @@ -7493,123 +7401,123 @@ msgstr "Tag part_image necessita de uma instância de Peça" msgid "company_image tag requires a Company instance" msgstr "Tag company_image necessita de uma instância de Empresa" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Código da situação" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Localização externa" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Árvore de Peças" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Data de validade antes" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Data de validade depois" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Inativo" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Quantidade obrigatória" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Uma peça válida deve ser fornecida" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "A peça do fornecedor informado não existe" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "A peça do fornecedor tem um tamanho de pacote definido, mas o item use_pack_size não foi definida" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Números de série não podem ser fornecidos para uma parte não rastreável" @@ -7629,7 +7537,7 @@ msgstr "Ícone padrão para todos os locais que não tem um ícone (opcional)" msgid "Stock Location" msgstr "Localização do estoque" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Locais de estoque" @@ -7718,7 +7626,7 @@ msgstr "Selecione uma peça do fornecedor correspondente para este item de estoq msgid "Where is this stock item located?" msgstr "Onde está localizado este item de estoque?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Embalagem deste item de estoque está armazenado em" @@ -7734,7 +7642,7 @@ msgstr "Este item está instalado em outro item?" msgid "Serial number for this item" msgstr "Número de série para este item" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Código do lote para este item de estoque" @@ -7790,136 +7698,136 @@ msgstr "Preço de compra unitário único no momento da compra" msgid "Converted to part" msgstr "Convertido para peça" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Peça não está definida como rastreável" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Quantidade deve ser inteira" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Quantidade não deve exceder a quantidade em estoque ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "A quantidade não corresponde aos números de série" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Item em estoque foi reservado para um pedido" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Item em estoque está instalado em outro item" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "item em estoque contem outro(s) items" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Item em estoque foi reservado para outro cliente" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Item no estoque está em produção no momento" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Itens de série não podem ser mesclados" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Item de estoque duplicado" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Itens de estoque devem se referir à mesma peça" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Itens de estoque devem se referir à mesma peça do fornecedor" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Códigos de estado do estoque devem corresponder" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Item do estoque não pode ser realocado se não houver estoque da mesma" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Observações de entrada" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Deve-se fornecer o valor desse teste" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "O anexo deve ser enviado para este teste" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Resultado do teste" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Valor da saída do teste" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Anexo do resultado do teste" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Notas do teste" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "Usar tamanho do pacote ao adicionar: a quantidade definida é o número msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Expirado" @@ -8024,7 +7932,7 @@ msgstr "Quantidade não deve exceder a quantidade disponível em estoque ({q})" msgid "Enter serial numbers for new items" msgstr "Inserir número de série para novos itens" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Local de destino do estoque" @@ -8101,79 +8009,79 @@ msgstr "Selecionar itens de estoque para mudar estados" msgid "No stock items selected" msgstr "Nenhum item de estoque selecionado" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Sub-locais" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Parte deve ser comercializável" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Item é alocado para um pedido de venda" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Item está alocado a um pedido de produção" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Cliente para atribuir itens de estoque" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "A empresa selecionada não é um cliente" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Nodas atribuídas a estoque" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Uma lista de item de estoque deve ser providenciada" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Notas de fusão de estoque" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Permitir fornecedores divergentes" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Permitir a fusão de itens de estoque de fornecedores diferentes" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Permitir estado incompatível" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Permitir a fusão de itens de estoque com estado diferentes" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Ao menos dois itens de estoque devem ser providenciados" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Valor da chave primária do Item Estoque" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Notas da transação de estoque" @@ -8305,11 +8213,11 @@ msgstr "Enviado ao cliente" msgid "Returned from customer" msgstr "Devolvido pelo cliente" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Permissão Negada" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Você não tem permissão para visualizar esta página." @@ -8317,47 +8225,39 @@ msgstr "Você não tem permissão para visualizar esta página." msgid "Authentication Failure" msgstr "Falha na Autenticação" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Você foi desconectado do InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Iniciar sessão" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Página não encontrada" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "A página solicitada não existe" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Erro interno do servidor" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "O servidor %(inventree_title)s gerou um erro interno" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Consulte o login de erro na interface admin para mais detalhes" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Site está em Manutenção" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "O site está atualmente em manutenção e estará de volta em breve!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logotipo InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Reinicialização do Servidor é Necessária" @@ -8423,31 +8323,31 @@ msgstr "Clique no link abaixo para ver esta peça" msgid "Minimum Quantity" msgstr "Quantidade Mínima" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Usuários" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Selecione quais usuários estão atribuídos a este grupo" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Os seguintes usuários são membros de vários grupos" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Informações pessoais" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Permissões" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Datas importantes" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "O token foi revogado" @@ -8455,55 +8355,55 @@ msgstr "O token foi revogado" msgid "Token has expired" msgstr "Token expirou" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "Token da API" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "Tokens de API" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Nome do Token" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Nome de token personalizado" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Data de validade do token" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Visto pela Última Vez" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Última vez que o token foi usado" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Revogado" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Administrador" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Balanço" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Pedidos de compra" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Pedidos de vendas" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Pedidos de Devolução" diff --git a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po index ae71176b55..2b4a1678f8 100644 --- a/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pt_BR/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint não encontrado" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Lista de itens inválida fornecida" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Filtros inválidos fornecidos" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "Nenhum item encontrado para excluir" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (novamente)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "Informe a data" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Observações" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "O valor fornecido não corresponde ao padrão exigido: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "Não é possível serializar mais de 1000 itens de uma vez" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Grupo invalido:{group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Chinês (simplificado)" msgid "Chinese (Traditional)" msgstr "Chinês (tradicional)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Entrar no aplicativo" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-mail" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "O campo de referência não deve ficar vazio" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "O número de referência é muito longo" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Descrição" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Falha na Tarefa" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Erro de servidor" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Moeda" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Sobrenome do usuário" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Ativo" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Arquivo de dados" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Formato de arquivo não suportado" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "O arquivo é muito grande" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Falha ao baixar a imagem da URL remota" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referência do pedido de venda" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Alocar automaticamente os itens necessários com os números de série correspondentes" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Aceitar que os itens de estoque não foram totalmente alocados para esta encomenda" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Cancelado" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Notificações de usuários será excluído após um número especificado de dias" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Modelo" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Arquivo de dados" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "Os seguintes números de série não estão disponíveis" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Modelos de teste só podem ser criados para partes testáveis" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Quantidade Especulativa" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "ID do modelo" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po index 7b376c42b1..0182dd4f01 100644 --- a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Language: ro_RO\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Utilizatorul nu are permisiunea de a vedea acest model" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Domeniul de e-mail furnizat nu este aprobat." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Număr de serie duplicat" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po index f355de4256..45d5110a9e 100644 --- a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Конечная точка API не обнаружена" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "У пользователя недостаточно прав для просмотра этой модели!" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (еще раз)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Подтверждение адреса электронной почты" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Вы должны вводить один и тот же адрес электронной почты." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Регистрация MFA отключена." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Указанный основной адрес электронной почты неверен." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Указанный домен электронной почты не утверждён." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Регистрация отключена." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Невозможно преобразовать {original} в {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "недопустимое количество" @@ -100,14 +92,14 @@ msgstr "Введите дату" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Записи" @@ -120,42 +112,42 @@ msgstr "Значение '{name}' отсутствует в формате ша msgid "Provided value does not match required pattern: " msgstr "Предоставленное значение не соответствует требуемому формату: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Пустая строка серийного номера" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Повторяющийся серийный номер" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Диапазон группы {group} превышает допустимое количество ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Серийных номеров не найдено" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Число уникальных серийных номеров ({s}) должно соответствовать количеству ({q})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Удалить HTML теги из этого значения" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Китайский (Упрощенный)" msgid "Chinese (Traditional)" msgstr "Китайский (Традиционный)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "EMail" @@ -368,247 +360,205 @@ msgstr "Метаданные плагина" msgid "JSON metadata field, for use by external plugins" msgstr "Поле метаданных JSON для использования внешними плагинами" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Неправильно отформатированный шаблон" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Указан неизвестный ключ формата" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Отсутствует требуемый ключ формата" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Ссылочный идентификатор не может быть пустым" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Ссылка должна соответствовать шаблону {pattern}" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Номер ссылки слишком большой" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Повторяющиеся имена не могут существовать под одним и тем же родителем" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Неверный выбор" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Название" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Описание" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Описание (необязательно)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Путь" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Записи о скидке (необязательно)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Данные штрих-кода" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Данные стороннего штрих-кода" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Хэш штрих-кода" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Уникальный хэш данных штрих-кода" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Обнаружен существующий штрих-код" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Ошибка сервера" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Сервер зарегистрировал ошибку." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Должно быть действительным номером" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Валюта" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Выберите валюту из доступных вариантов" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Имя пользователя" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Имя" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Имя пользователя" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Фамилия" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Фамилия пользователя" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Электронный адрес пользователя" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Персонал" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Имеет ли этот пользователь права персонала" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Суперпользователь" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Это пользователь является суперпользователем" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Активный" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Активна эта учетная запись" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "У вас недостаточно прав для изменения роли этого пользователя." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Только суперпользователи могут создавать новых пользователей" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Ваша учётная запись была успешно создана." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Пожалуйста, используйте функцию сброса пароля для входа" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Добро пожаловать в InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Неверное значение" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Файл данных" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Выберите файл данных для загрузки" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Файл слишком большой" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Столбцы в файле не найдены" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Строки данных в файле не найдены" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Строки данных в файле не найдены" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Столбцы данных не предоставлены" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Отсутствует обязательный столбец: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Повторяющийся столбец: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Удаленное изображение" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "ССЫЛКА файла изображения на удаленном сервере" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Загрузка изображений с удаленного URL-адреса не включена" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Родительский заказ на производство" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Деталь" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Категория" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Заказ на производство должен быть отменен перед удалением" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Расходники" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Необязательно" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Производимая деталь" @@ -756,7 +705,7 @@ msgstr "Производимая деталь" msgid "Tracked" msgstr "Отслеживается" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Зарезервировано" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Доступно" msgid "Build Order" msgstr "Заказ на производство" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Заказы на производство" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Ссылка на заказ на производство" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Ссылка на заказ" msgid "SalesOrder to which this build is allocated" msgstr "Заказ на продажу, которому принадлежит этот заказ на производство" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Место хранения - источник" @@ -887,17 +836,17 @@ msgstr "Статус заказа на производство" msgid "Build status code" msgstr "Код статуса заказа на производство" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Код партии" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Код партии для продукции" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Дата создания" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Пользователь, создавший этот заказ на производство" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ответственный" @@ -947,7 +896,7 @@ msgstr "Пользователь, ответственный за этот за msgid "External Link" msgstr "Внешняя ссылка" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Ссылка на внешний URL" @@ -982,7 +931,7 @@ msgstr "Заказ на производство {build} был завершен msgid "A build order has been completed" msgstr "Заказ на производство был завершен" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Для отслеживаемых частей должны быть указаны серийные номера" @@ -998,18 +947,18 @@ msgstr "Продукция уже произведена" msgid "Build output does not match Build Order" msgstr "Продукция не совпадает с заказом на производство" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Количество должно быть больше нуля" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Количество не может быть больше количества продукции" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Сборка {serial} не прошла все необходимые тесты" @@ -1022,11 +971,11 @@ msgstr "Номер позиции для производства" msgid "Build object" msgstr "Объект производства" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Количество должно быть 1 для сериализов msgid "Selected stock item does not match BOM line" msgstr "Выбранная складская позиция не соответствует позиции в BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Складская позиция" @@ -1094,366 +1043,366 @@ msgstr "Установить в" msgid "Destination stock item" msgstr "Целевая складская позиция" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Наименование детали" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Название кода проекта" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Выход Продукции" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Продукция не совпадает с родительским заказом на производство" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Продукция не соответствует детали заказа на производство" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Эта продукция уже помечена как завершенная" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Сырье для этой продукции не полностью зарезервировано" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Введите количество продукции" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Для отслеживаемых деталей должно быть указано целочисленное количество" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Требуется целое количество, так как материал содержит отслеживаемые детали" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Серийные номера" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Введите серийные номера для продукции" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Расположение" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Автоматически выделить серийные номера" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Автоматически зарезервировать необходимые элементы с соответствующими серийными номерами" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Следующие серийные номера уже существуют или недействительны" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Необходимо представить список выхода деталей" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Место хранения для списанной продукции" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Отменить резервирование" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Отменить все резервы запасов для списанной продукции" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Причина списания продукции" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Место хранения для завершенной продукции" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Статус" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Разрешить неполное резервирование" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Завершить продукцию, если запасы не были полностью распределены" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Вычесть запасы, которые уже были зарезервированы для этого производства" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Удалить незавершенную продукцию" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Удалить всю незавершенную продукцию" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Запрещено" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Принять как поглощенный этим заказом на производство" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Отменить резерв, до завершения заказа на производство" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Перераспределенные запасы" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Как вы хотите обработать дополнительные складские позиции, назначенные для заказа на производство" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Некоторые складские позиции были перераспределены" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Разрешить не полное резервирование" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Подтвердите, что складские позиции не были полностью зарезервированы для этого заказа на производство" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Необходимые запасы не были полностью зарезервированы" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Разрешить незавершенные производимые детали" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Допустить, что требуемое кол-во продукции не завершено" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Требуемое количество деталей не было произведено" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "Производственный заказ имеет незавершённые дочерние заказы" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Заказ на производство должен быть в стадии выполнения" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Заказ на производство имеет незавершенную продукцию" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Позиция для производства" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Выход продукции" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Продукция должна указывать на тот же производство" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Позиция для производства" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part должна указывать на ту же часть, что и заказ на производство" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Элемент должен быть в наличии" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Превышено доступное количество ({q})" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Продукция должна быть указан для резервирования отслеживаемых частей" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Продукция не может быть указана для резервирования не отслеживаемых частей" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Необходимо указать резервируемые элементы" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Место хранения, где будут зарезервированы детали (оставьте пустым, чтобы забрать их из любого места)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Исключить место хранения" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Исключить складские позиции из этого выбранного места хранения" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Обменный остаток" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Складские позиции в нескольких местах могут использоваться на взаимозаменяемой основе" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Заменить остатки" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Разрешить резервирование замещающих деталей" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Необязательные элементы" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Зарезервировать необязательные позиции BOM для заказа на производство" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Не удалось запустить задачу автораспределения" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Деталь поставщика" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Зарезервированное количество" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Отслеживание" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Унаследованные" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Разрешить разновидности" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Позиция BOM" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Зарезервированные Запасы" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "В заказе" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "В производстве" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Внешний склад" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Доступный запас" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Отменено" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Готово" @@ -1583,10 +1532,10 @@ msgstr "Строка ключа должна быть уникальной" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Пользователь" @@ -1594,7 +1543,7 @@ msgstr "Пользователь" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Цена" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Токен" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "Код" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Заголовок" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Ссылка" @@ -1715,11 +1664,10 @@ msgstr "Читать" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Изображение" @@ -1767,7 +1715,7 @@ msgstr "Определение" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Вложения" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Значение" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Данные" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Результат" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Нет группы" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "URL сайта заблокирован настройками" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Требуется перезапуск" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Настройки были изменены, что требует перезапуска сервера" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Ожидаемые миграции" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Количество ожидаемых миграций базы данных" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Название сервера" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Текстовое описание сервера" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Название инстанса" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Имя сервера в заголовке" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Ограничить отображение `О...`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Показать `О...` только суперпользователям" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Название компании" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Внутреннее название компании" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Базовая ссылка" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Базовая ссылка для экземпляра сервера" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Валюта по умолчанию" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Выберите базовую валюту для расчета цены" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Поддерживаемые валюты" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Список поддерживаемых кодов валют" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Интервал обновления курса валют" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Как часто обновлять курс валют (установите \"ноль\", чтобы выключить)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "дней" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Плагин обновления валют" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Модуль обновления валюты" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Скачать по ссылке" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Разрешить загрузку удаленных изображений и файлов по внешнему URL" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Ограничение размера загрузки" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Максимально допустимый размер загрузки для удалённого изображения" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-Agent, используемый для загрузки из URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Позволяет переопределить user-Agent, используемый для загрузки изображений и файлов с внешнего URL (оставьте пустым по умолчанию)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Строгая проверка URL-адреса" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Требуется спецификация схемы при проверке URL-адресов" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Интервал проверки обновлений" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Как часто проверять наличие обновлений (установите ноль чтобы выключить)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Автоматическое резервное копирование" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Включить автоматическое резервное копирование базы данных и медиа-файлов" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Интервал резервного копирования" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Укажите количество дней между событиями автоматического резервного копирования" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Интервал удаления задачи" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Результаты фоновых задач будут удалены после указанного количества дней" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Интервал удаления журнала ошибок" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Журналы ошибок будут удалены после указанного количества дней" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Интервал удаления уведомления" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Уведомления пользователя будут удалены после указанного количества дней" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Поддержка штрих-кодов" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Включить поддержку сканера штрих-кодов в веб-интерфейсе" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Задержка сканирования штрих-кода" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Время задержки обработки штрих-кода" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Поддержка веб-камер штрих-кодов" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Разрешить сканирование штрих-кода через веб-камеру в браузере" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Показать данные штрих-кода" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Отображать данные штрих-кода в браузере в виде текста" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Плагин генерации штрих-кода" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Плагин для использования внутренней генерации данных штрих-кодов" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Ревизия детали" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Включить поле ревизии для элемента" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "Только ревизия сборки" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Разрешить удаление из заказа" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Разрешить удаление частей, которые используются в заказе" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Регулярное выражение IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Шаблон регулярного выражения для сопоставления IPN детали" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Разрешить повторяющиеся IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Разрешить нескольким элементам использовать один и тот же IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Разрешить редактирование IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Разрешить изменение значения IPN при редактировании детали" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Скопировать данные BOM детали" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Копировать данные BOM по умолчанию при дублировании детали" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Скопировать данные параметров детали" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Копировать данных параметров по умолчанию при дублировании детали" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Скопировать данные тестирования детали" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Копировать данные тестирования по умолчанию при дублировании детали" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Скопировать параметры по шаблону категории" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Копировать параметры по шаблону категории при создании детали" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Шаблон" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "По умолчанию детали являются шаблонами" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "По умолчанию детали могут быть собраны из других компонентов" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Компонент" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "По умолчанию детали могут использоваться в качестве суб-компонентов" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Можно купить" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Можно продавать" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Детали продаются по умолчанию" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Виртуальная" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Детали являются виртуальными по умолчанию" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Показать Импорт в просмотре" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Отобразить мастер импорта на некоторых видах деталей" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Показывать связанные детали" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Отображать связанные детали для элемента" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Начальные данные о запасах" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Разрешить создание начального запаса при добавлении новой детали" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Исходные данные о поставщике" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Разрешить создание исходных данных о поставщике при добавлении новой детали" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Формат отображения детали" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Формат для отображения имени детали" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Значок раздела по умолчанию" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Значок категории по умолчанию (пустой означает отсутствие значка)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Принудительное применение единиц измерения параметров" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Если введены единицы, значения параметра должны соответствовать указанным единицам измерения" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Минимальные Цены Десятичные Значки" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Минимальное количество десятичных знаков при отображении данных о ценах" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Макс. Цены десятичные знаки" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Минимальное количество десятичных знаков при отображении данных о ценах" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Использовать цены поставщика" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Включить разницу цен поставщиков при расчетах цен" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Изменить историю покупки" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Ценообразование по историческим заказам на поставку отменяет различия в ценах поставщиков" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Использовать цены из складских позиций" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Использовать расценки из ручного ввода данных о запасах для расчета цен" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Возраст цен складских позиций" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Исключить складские позиции старше указанного количества дней с расчёта цен" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Использовать варианты цен" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Включить разницу цен поставщиков при расчетах цен" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Только Активные Варианты" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Использовать только активные запчасти для расчета стоимости варианта" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Интервал пересчета цен" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Количество дней до автоматического обновления цены" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Внутренние цены" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Разрешить внутренние цены для частей" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Переопределение внутренней цены" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "При наличии внутренних цен переопределить ценовой диапазон" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Включить печать этикеток" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Включить печать этикеток из веб-интерфейса" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Изображение меток DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Разрешение DPI при создании файлов изображений для печати этикеток плагинов" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Включить отчеты" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Включить генерацию отчетов" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Режим отладки" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Генерировать отчеты в режиме отладки (вывод HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Журнал ошибок отчета" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Журнал ошибок, которые возникают при создании отчетов" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Размер страницы" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Размер страницы по умолчанию для PDF отчетов" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Глобально уникальные серийные номера" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Серийные номера для складских позиций должны быть уникальными глобально" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Автоматическое заполнение серийных номеров" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Автоматическое заполнение серийных номеров в формах" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Удалить исчерпанный запас" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Определяет поведение по умолчанию, когда складская позиция заканчивается" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Код партии Шаблона" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Шаблон для создания кодов партии по умолчанию для складских позиций" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Срок годности Запасов" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Включить функцию истечения срока годности" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Использовать просроченные остатки в производстве" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Разрешить продажу просроченных запасов" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Время Залежалости Запасов" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Количество дней перед тем как складская единица будет считаться просроченной" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Использовать просроченные остатки в производстве" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Разрешить использовать просроченные остатки в производстве" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Контроль за собственными запасами" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Разрешить владельцу контролировать расположение складов и номенклатуры" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Значок местоположения по умолчанию" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Значок местоположения склада по умолчанию (пустой означает отсутствие значка)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Показать установленные складские позиции" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Отображать установленные складские позиции в складских таблицах" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Проверять спецификацию при установке изделий" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Установленные единица хранения должны присутствовать в спецификации для родительской детали" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Разрешить передачу товара, отсутствующего на складе" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Разрешить перемещение товаров, которых нет на складе, между складами" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Паттерн ссылки заказа на производство" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Поле требуемого паттерна для создания ссылки заказа на производство" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Требуется ответственный владелец" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Ответственный владелец должен быть назначен для каждого заказа" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Запретить вывод сборки до тех пор, пока не пройдут все необходимые тесты" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Включить заказы на возврат" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Включите функцию заказа на возврат в пользовательском интерфейсе" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Шаблон заказа на возврат товара" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Необходимый шаблон для создания поля «Возврат заказа»" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Редактировать завершенные возвратные заказы" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Разрешить редактирование возвращенных заказов после их завершения" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Шаблон заказа на возврат товара" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Необходимый шаблон для создания поля «Возврат заказа»" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Заказы на продажу, помеченные как отгруженные, будут автоматически завершены, минуя статус 'отгружено'" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Редактировать завершенные заказы на покупку" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Разрешить редактирование заказов после их отправки или завершения" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Редактировать завершенные заказы на покупку" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Автоматически отмечать заказы на покупку как выполненные при получении всех позиций" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Включить функцию восстановления пароля" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Включить функцию восстановления пароля на странице входа" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Разрешить регистрацию" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Включить самостоятельную регистрацию пользователей на странице входа" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Включить SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Включить SSO на странице входа" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Включить регистрацию через SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Включить самостоятельную регистрацию пользователей через SSO на странице входа" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "Включить синхронизацию групп через SSO" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Включить синхронизацию групп InvenTree с группами, предоставляемыми IdP" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Отображение от групп SSO к локальным группам InvenTree. Если локальная группа не существует, она будет создана." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Необходимо указать EMail" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Написать дважды" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Пароль дважды" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Разрешенные домены" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Группа, на которую назначаются новые пользователи при регистрации. Если включена синхронизация группы SSO, эта группа задается только в том случае, если ни одна группа не может быть назначена через IdP." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Принудительное MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Пользователи должны использовать многофакторную безопасность." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Проверять плагины при запуске" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Исключить складские позиции во внешних местах хранения из инвентаризации" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Автоматический период инвентаризации" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Количество дней между автоматической записью запасов (установите нулевое значение для отключения)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Интервал удаления журнала ошибок" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Журналы ошибок будут удалены после указанного количества дней" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Показывать полные имена пользователей" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Отображать полные имена пользователей вместо логинов" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Включить данные тестовой станции" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Включить сбор данных с тестовой станции для получения результатов тестирования" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Производитель" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Компания" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Ссылка на адресную информацию (внешняя)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Деталь производителя" @@ -3744,8 +3708,8 @@ msgstr "Выберите деталь" msgid "Select manufacturer" msgstr "Выберите производителя" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Наименование параметра" msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Ед.изм" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "Связанная деталь производителя должна ссылаться на ту же базовую деталь" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Поставщик" @@ -3805,7 +3769,7 @@ msgstr "Поставщик" msgid "Select supplier" msgstr "Выберите поставщика" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Код поставщика" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Описание детали поставщика" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Описание детали поставщика" msgid "Note" msgstr "Запись" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "базовая стоимость" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Упаковка" @@ -3861,7 +3825,7 @@ msgstr "Кол-во в упаковке" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "множественные" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Валюта по умолчанию для этого поставщика" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "На складе" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Ключ" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Файл данных" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "Ошибки" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Корректный" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Покупатель" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Внутренний код детали" @@ -4879,7 +4847,7 @@ msgstr "Выберите место назначения для полученн msgid "Enter batch code for incoming stock items" msgstr "Введите код партии для поступающих складских позиций" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Истекает" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Статус складской позиции" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Остатки произведенные заказом на производство" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Остатки требуемые для заказов на производство" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Необходимо выбрать эту опцию" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Категория детали" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Категория детали" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Место хранения по умолчанию" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Место хранения по умолчанию для деталей этой категории" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Структура" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Детали не могут быть непосредственно отнесены к структурной категории, но могут быть отнесены к дочерним категориям." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Ключевые слова по умолчанию" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Ключевые слова по умолчанию для деталей этой категории" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Иконка" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Иконка (необязательно)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Детали" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Складская позиция с этим серийным номером уже существует" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Часть с таким именем, IPN и ревизией уже существует." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Наименование детали" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Шаблон" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Эта деталь является шаблоном?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Эта деталь является разновидностью другой детали?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Разновидность" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Описание детали (необязательно)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Ключевые слова" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Категория" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Ревизия или серийный номер детали" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Ревизия" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Где обычно хранится эта деталь?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Поставщик по умолчанию" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Срок действия по умолчанию" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Срок годности (в днях) для складских позиций этой детали" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Минимальный запас" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Минимально допустимый складской запас" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Единицы измерения этой детали" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Может ли эта деталь быть создана из других деталей?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Может ли эта деталь использоваться для создания других деталей?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Может ли эта деталь быть продана покупателям?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Эта деталь активна?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Эта деталь виртуальная, как программный продукт или лицензия?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Контрольная сумма BOM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "BOM проверил" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Дата проверки BOM" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Создатель" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Последняя инвентаризация" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Продать несколько" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Минимальная Стоимость BOM" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Максимальная Стоимость BOM" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Минимальная Стоимость" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Максимальная Стоимость" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Количество Элементов" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Дата" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Дополнительные Записи" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Отчет" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Количество Деталей" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Название теста" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Введите имя для теста" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Описание теста" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Введите описание для этого теста" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Включено" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Требуется" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Требуется значение" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Варианты" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Название параметра" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Описание параметра" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Чекбокс" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Недопустимое значение параметра" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Значение Параметра" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Значение по умолчанию" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Значение параметра по умолчанию" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Код или наименование детали" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Код детали" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN детали" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Значение IPN" - -#: part/models.py:4130 -msgid "Level" -msgstr "Уровень" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Уровень BOM" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Суб-деталь" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Эта позиция спецификации необязательна" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Эта позиция - расходник. (она не отслеживается в заказах на производство)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Перерасход" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Расчетное количество перерасходов производства (абсолютное или процентное)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Ссылка на позицию спецификации" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Записи о позиции BOM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Контрольная сумма" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Проверен" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Наследуется" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Складские позиции для разновидностей деталей могут быть использованы для этой позиции BOM" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Позиция BOM-родителя" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Замена детали" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Выберите связанную часть" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Подкатегории" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Результаты" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Валюта закупки складской позиции" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Не выбрана ни одна деталь" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Выберите категорию" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Оригинальная деталь" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Копировать Изображение" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Скопировать BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Скопировать параметры" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Копировать Записи" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Скопировать записи из оригинальной детали" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Выберите поставщика (или оставьте поле пустым, чтобы пропустить)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Выберите поставщика (или оставьте поле пустым, чтобы пропустить)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Код производителя" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Название категории" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Производится" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Складские позиции" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Поставщики" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Общий запас" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Дублировать деталь" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Начальный запас" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Копировать параметры категории" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Копировать шаблоны параметров из выбранной категории деталей" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Существующее изображение" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Исключить складские позиции в внешних местах хранения" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Создать отчет" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Обновить детали" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Проверка фонового работника не удалась" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Минимальная цена" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Максимальная цена" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Обновить" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Можно произвести" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Пропустить некорректные строки" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Подходящая деталь не найдена" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Некорректное количество" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Код детали" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Не найдено совпадений для данных штрих- msgid "Match found for barcode data" msgstr "Найдено совпадение по штрих-коду" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Включить уведомления по электронной почте" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Разрешить отправку уведомлений о событиях по электронной почте" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Открыть ссылку" @@ -6936,7 +6844,7 @@ msgstr "Встроенный плагин" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Плагин" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Элементы" @@ -7281,67 +7189,67 @@ msgstr "Высота [мм]" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Прогресс" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "Выходной файл" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "Сгенерированный выходной файл" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Сниппет" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Описание файла сниппета" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Объект" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Описание медиафайла" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Код статуса" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Древо Деталей" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Залежалый" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Необходимо указать количество" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Место хранения" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Места хранения" @@ -7718,7 +7626,7 @@ msgstr "Выберите соответствующего поставщика msgid "Where is this stock item located?" msgstr "Где находиться эта складская позиция?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Упаковка этой складской позиции хранится в" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Код партии для этой складской позиции" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Деталь не является отслеживаемой" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Складская позиция была назначена заказу на продажу" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Складская позиция установлена в другую деталь" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Складская позиция содержит другие детали" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Складская позиция была назначена покупателю" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Складская позиция в производстве" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь поставщика" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Результат тестирования" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Записи Тестирования" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Номер детали поставщика" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Просрочен" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "Введите серийные номера для новых элементов" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "Выберите складские позиции для изменен msgid "No stock items selected" msgstr "Не выбрано ни одной складской позиции" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Места хранения" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Элемент зарезервирован для заказа на производство" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Покупатель для назначения складских позиций" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "Выбранная компания не является покупателем" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Записи о назначенных запасах" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Необходимо предоставить список складских позиций" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Записи о слияниях запасов" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Разрешить слияние складских позиций с различными поставщиками" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Разрешить слияние складских позиций с различными статусами" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Необходимо предоставить как минимум 2 складские позиции" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Нет изменений" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Записи о перемещениях запасов" @@ -8305,11 +8213,11 @@ msgstr "Отправлено клиенту" msgid "Returned from customer" msgstr "Возвращено от клиента" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Доступ запрещён" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "У вас нет прав для просмотра этой страницы." @@ -8317,47 +8225,39 @@ msgstr "У вас нет прав для просмотра этой стран msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Логин" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Страница не найдена" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Внутренняя ошибка сервера" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Логотип InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "Минимальное количество" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Пользователи" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Персональная информация" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Права доступа" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Важные даты" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "Токены API" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Название токена" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Последнее Посещение" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Отозван" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Админ" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Инвентаризация" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Заказы на закупку" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Заказы на продажу" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Заказы на возврат" diff --git a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po index 357acf31ba..83e6f68bcc 100644 --- a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Language: sk_SK\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "" @@ -100,14 +92,14 @@ msgstr "" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po index 20ab8f35fe..0af9b73960 100644 --- a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Language: sl_SI\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API vmesnik ni najden" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Uporabnik nima dovoljenja pogleda tega modela" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Ponovnite e-pošto" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Potrdite e-pošto" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "E-pošti se morata ujemati" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA Registracija je onemogočena." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Podana epošta ni veljavna." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Domena epošte ni podprta." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registracija je onemogočena." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Ni mogoče pretvoriti {original} v {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Podana napačna količina" @@ -100,14 +92,14 @@ msgstr "Vnesi datum" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Zapiski" @@ -120,42 +112,42 @@ msgstr "Vrednost '{name}' ni v predpisanem formatu" msgid "Provided value does not match required pattern: " msgstr "Podana vrednost se ujema s predpisanim vzorcem: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Prazno polje serijske številke" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Dvojna serijska številka" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Doseg skupine {group} presega dovoljene količine ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Serijske številke niso najdene" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Število unikatnih serijskih številk ({len(serials)}) se mora ujemati s količino ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Odstranite oznako HTML iz te vrednosti" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Kitajščina (poenostavljena)" msgid "Chinese (Traditional)" msgstr "Kitajščina (tradicionalno)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-pošta" @@ -368,247 +360,205 @@ msgstr "Metapodatki vtičnika" msgid "JSON metadata field, for use by external plugins" msgstr "Polje metapodatkov JSON za uporabo pri zunanjih vtičnikih" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Nepravilno nastavljen vzorec" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Nastavljen neprepoznan ključ formata" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Manjka obvezen ključ formata" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referenčno polje ne sme biti prazno" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referenca se mora ujemati s vzorcem" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referenčna številka prevelika" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Podvojena imena ne morejo obstajati pod istim nadrejenim elementom" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Nedovoljena izbira" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Opis (opcijsko)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Pot" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown opombe (neobvezno)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Podatki čtrne kode" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Podatki črtne kode tretje osebe" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Oznaka črtne kode" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Enolična oznaka podatkov črtne kode" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Črtna koda že obstaja" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Napaka strežnika" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Zaznana napaka na strežniku." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Mora biti veljavna številka" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Izberite valuto med razpoložljivimi možnostmi" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Uporabniško ime" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Ime" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Ime uporabnika" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Priimek" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Priimek uporabnika" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Email uporabnika" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Osebje" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Ali ima ta uporabnik pravice osebja" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superuporabnik" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Ali je ta uporabnik superuporabnik" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktivno" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Ali je ta račun aktiven" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Nimate dovoljenja za spreminjanje vloge tega uporabnika." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Samo superuporabniki lahko ustvarijo nove uporabnike" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Vaš račun je bil ustvarjen." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Za prijavo uporabite funkcijo ponastavitve gesla" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Dobrodošli v InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Neveljavna vrednost" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Podatki datoteke" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Izberite datoteke za naložiti" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Datoteka je prevelika" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "V datoteki ni bilo najdenih stolpcev" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "V datoteki ni bilo njadenih vrstic" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Niso bile podane vrste s podatki" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Niso bili podani stolpci s podatki" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Manjka obvezni stolpec: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Dvojni stolpec: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Oddaljena slika" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "Povezava do oddaljene slike" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Prenos slik iz oddaljene povezave ni omogočen" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Nadrejena izgradnja" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Izgradnja mora biti najprej preklicana, nato je lahko izbrisana" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Neobvezno" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Montaža" @@ -756,7 +705,7 @@ msgstr "Montaža" msgid "Tracked" msgstr "Sledi" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testno" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Dodeljeno" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Na voljo" msgid "Build Order" msgstr "Nalog izgradnje" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Nalogi izgradnje" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Referenca naloga izgradnje" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referenca dobavnica" msgid "SalesOrder to which this build is allocated" msgstr "Dobavnica na katero se navezuje ta izgradnja" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Lokacija vira" @@ -887,17 +836,17 @@ msgstr "Status izgradnje" msgid "Build status code" msgstr "Koda statusa izgradnje" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Številka serije" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Številka serije za to izgradnjo" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Datum ustvarjenja" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Uporabnik, ki je izdal nalog za izgradnjo" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odgovoren" @@ -947,7 +896,7 @@ msgstr "Odgovorni uporabnik ali skupina za to naročilo" msgid "External Link" msgstr "Zunanja povezava" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Zunanja povezava" @@ -982,7 +931,7 @@ msgstr "Nalog izgradnje {build} je dokončan" msgid "A build order has been completed" msgstr "Nalog izgradnej dokončan" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "Igradnja je že dokončana" msgid "Build output does not match Build Order" msgstr "Izgradnja se ne ujema s nalogom izdelave" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Količina za zalogo s serijsko številko mora biti 1" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Postavka zaloge" @@ -1094,366 +1043,366 @@ msgstr "Inštaliraj v" msgid "Destination stock item" msgstr "Destinacija postavke zaloge" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Izgradnja" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Izgradnja se ne ujema z nadrejeno izgradnjo" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Izhodni del se ne ujema s naročilom sestava" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Ta sestava je že zaključena" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Preklicano" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Končano" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Uporabnik" @@ -1594,7 +1543,7 @@ msgstr "Uporabnik" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Povezava" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Priloga" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Podatki datoteke" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Nadzor dela v ozadju neuspel" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Posalno stranki" msgid "Returned from customer" msgstr "Vrnjeno od stranke" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po index d809b06852..0038efbafe 100644 --- a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Language: sr_CS\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API krajnja tačka nije pronađena" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "Lista nevalidiranih stavki" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "Dati su neispravni filteri" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "Nisu pronađene stavke za brisanje" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Korisnik nema dozvolu za pregled ovog modela" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "Poslat mejl za verifikaciju." - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-pošta (ponovo)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Potvrda adrese e-pošte" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Svaki put morate upisati istu e-poštu." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Multifaktor autentifikacija nije omogućena" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Navedena primarna adresa e-pošte nije važeća." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Navedeni domen adrese e-pošte nije prihvaćen." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registracija je onemogućena." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Nije moguće konvertovati {original} u {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Isporučena nevažeća količina" @@ -100,14 +92,14 @@ msgstr "Unesite datum" msgid "Invalid decimal value" msgstr "Neispravna decimalna vrednost" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Napomene" @@ -120,42 +112,42 @@ msgstr "Vrednost '{name}' se ne pojavljuje u formatu obrasca" msgid "Provided value does not match required pattern: " msgstr "Navedena vrednost ne odgovara traženom obrascu: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "Nije moguće dati više od 1000 serijskih brojeva stavkama odjednom" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Serijski broj nije popunjen" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Dupliciraj serijski broj" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Nevažeća grupa: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Raspon grupe {group} prelazi dozvoljenu količinu ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Nisu pronađeni serijski brojevi" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Broj jedinstvenih serijskih brojeva ({len(serials)}) mora odgovarati količini ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Uklonite HTML oznake iz ove vrednosti" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "Podatak sadrži zabranjen jezički sadržaj" @@ -343,11 +335,11 @@ msgstr "Kineski (Uprošćeni)" msgid "Chinese (Traditional)" msgstr "Kineski (Tradicionalni)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Prijavljivanje na aplikaciju" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-Pošta" @@ -368,247 +360,205 @@ msgstr "Metapodaci dodatka" msgid "JSON metadata field, for use by external plugins" msgstr "Polje metapodataka JSON, za korištenje eksternih dodataka" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Neispravno formatiran obrazac" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Naveden je ključ nepoznatog formata" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Nedostaje potreban ključ formata" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Polje za reference ne može biti prazno" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referenca mora odgovarati traženom obrascu" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Broj reference je predugačak" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Dvostruka imena ne mogu postojati pod istom nadredjenom grupom" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Nevažeći izvor" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Opis" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Opis (Opciono)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Putanja" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Zabeleške (Opciono)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Podaci sa barkoda" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Podaci sa barkoda trećih lica" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Heš barkoda" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Jedinstveni hash barkoda" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Postojeći barkod pronađen" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "Neuspešan zadatak" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "Pozadinski proces '{f}' neuspešan posle {n} pokušaja" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Greška servera" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Server je zabležio grešku." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Mora biti važeći broj" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Odaberite valutu među dostupnim opcijama" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Korisničko ime" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Ime" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Ime korisnika" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Prezime" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Prezime korisnika" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Adresa E-pošte korisnika" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Osoblje" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Da li ovaj korisnik ima dozvole koje ima osoblje?" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Super korisnik" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Da li je ovaj korisnik Super korisnik?" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktivan" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Da li je nalog ovog korisnika aktivan?" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Nemate dozvolu za promenu ove korisničke uloge." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Samo superkorisnici mogu kreirati nove korisnike" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Vaš nalog je kreiran" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Molimo vas koristite opciju resetovanja lozinke da biste se prijavili" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Dobrodošli u InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Nevažeća vrednost" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datoteka" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Odaberite datoteku za učitavanje" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "Format datoteke nike podržan" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Prevelika datoteka" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Nisu pronađene kolone podataka u datoteci" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Nisu pronađeni redovi podataka u datoteci" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Nisu navedeni redovi podataka" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Nisu obezbeđene kolone podataka" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Nedostaje potrebna kolona: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplicirana kolona: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Udaljena slika" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL udaljene slike" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Preuzimanje slika s udaljenog URL-a nije omogućeno" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "Neuspešno preuzimanje slike sa udaljene URL" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Roditeljski proizvod" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "Uključi varijante" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "Uključi varijante" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "Uključi varijante" msgid "Part" msgstr "Deo" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategorija" @@ -739,16 +688,16 @@ msgstr "Završeno nakon" msgid "Build must be cancelled before it can be deleted" msgstr "Proizvod mora biti poništen pre nego što se izbriše" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Potrošni materijal" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Opciono" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Sklapanje" @@ -756,7 +705,7 @@ msgstr "Sklapanje" msgid "Tracked" msgstr "Praćeno" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Proverljivo" @@ -768,7 +717,7 @@ msgstr "Neizmirena narudžbina" msgid "Allocated" msgstr "Alocirano" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Dostupno" msgid "Build Order" msgstr "Nalog za izradu" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Nalozi za izradu" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Reference naloga za pravljenje" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Referenca naloga za prodaju" msgid "SalesOrder to which this build is allocated" msgstr "Nalog za prodaju za koju je ova izrada alocirana" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Lokacija izvora" @@ -887,17 +836,17 @@ msgstr "Status izgradnje" msgid "Build status code" msgstr "Kod statusa izgradnje" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Kod serije" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Kod izgradnje za ovaj izlaz" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "datum kreiranja" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Korisnik koji je izdao nalog za izgradnju" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Odgovoran" @@ -947,7 +896,7 @@ msgstr "Korisnik ili grupa koja je odgovorna za ovaj nalog za izgradnju" msgid "External Link" msgstr "Spoljašnja konekcija" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Link za eksterni URL" @@ -982,7 +931,7 @@ msgstr "Nalog za izgradnju {build} je kompletiran" msgid "A build order has been completed" msgstr "Nalog za izgradnju je kompletiran" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Za delove koji mogu da se prate moraju se dostaviri serijski brojevi" @@ -998,18 +947,18 @@ msgstr "Izlaz izgradnje je već kompletiran" msgid "Build output does not match Build Order" msgstr "Izlaz izgradnje se ne slaže sa Nalogom za izgradnju" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Količina mora biti veća od nule" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Količina ne sme da bude veća od izlazne količine" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Izlaz izgradnje {serial} nije zadovoljio zahtevane testove" @@ -1022,11 +971,11 @@ msgstr "Stavka porudžbine naloga za izgradnju" msgid "Build object" msgstr "Objekat izgradnje" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Količina mora da bude 1 za zalihe koje su serijalizovane" msgid "Selected stock item does not match BOM line" msgstr "Izabrana stavka zaliha se ne slaže sa porudžbinom sa spiska materijala" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Stavka zaliha" @@ -1094,366 +1043,366 @@ msgstr "Ugradi u" msgid "Destination stock item" msgstr "Stavka zaliha odredišta" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Nivo izgradnje" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Ime dela" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Naziv koda projekta" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Kreiraj podređene izgradnje" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Automatski generiši podređene naloge za izgradnju" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Izlaz izgradnje" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Izlaz izgradnje se ne slaže sa nadređenom izgradnjom" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Izlazni deo se ne slaže sa delom Naloga za Izgradnju" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Ovaj izlaz izgradnje je već kompletiran" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Ovaj izlaz izgradnje nije u potpunosti alociran" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Unesi količinu za izlaz izgradnje" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Brojčana količina potrebna za delove koji mogu da se prate" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Potrebna je brojčana količina, jer opis materijala sadrži delove koji se mogu pratiti" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Serijski brojevi" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Unesi serijske brojeve za izlaz izgradnje" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Lokacija" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Lokacija zaliha za izlaz izgradnje" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Automatski alociraj serijske brojeve" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatski alociraj tražene stavke sa odgovarajućim serijskim brojevima" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Sledeći serijski brojevi već postoje ili su neispravni" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Lista izlaza izgradnje se mora obezbediti" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Lokacija zaliha za otpisane izlaze" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Odbaci alokacije" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Odbaci bilo kojiu alokaciju zaliha za otpisane izlaze" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Razlog za otpisane izlaz(e) izgradnje" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Lokacija za završene izlaze izgradnje" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Prihvati nekompletirane Alokacije" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "kompletiraj izlaze ako zalihe nisu u potpunosti alocirane" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Troši alocirane zalihe" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Troši bilo koje zalihe koje su već alocirane za ovu izgradnju" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Ukloni nekompletirane izlaze" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Izbriši svei izlaze izgradnje koji nisu kompletirani" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Nije dozvoljeno" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Prihvati kao potrošeno od strane ovog naloga za izgradnju" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Izmesti bre završetka ovog naloga za izgradnju" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Sveukupne izdvojene zalihe" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Šta želite da radite sa viškom stavki u zalihama koje su dodeljene nalogu za izgradnju?" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Neke stavke zaliha su prealocirane" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Prihvati nealocirano" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Prihvati da stavke zaliha nisu u potpunosti alocirane za ovaj nalog za izgradnju" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Tražene zalihe nisu u potpunosti alocirane" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Prihvati nekompletirano" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Prihvati da je traženi broj izlaza izgradnje nekompletan" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Traženi broj izgradnji nije kompletan" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "Nalog za izgradnju ima otvoren potčinjene naloge za izgradnju" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Nalog za izgradnju mora biti u stanju produkcije" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Nalog za izgradnju ima nekompletne izlaze" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Porudžbina izgradnje" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Izlaz izgradnje" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Izlaz izgradnje mora da referencira istu izgradnju" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Stavka porudžbine za izradu" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part mora da se referencira istom delu kao u nalogu za izgradnju" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Stavka mora da bude u zalihama" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Dostupna količina ({q}) premašena" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Izlaz izgradnje mora da određen za alokaciju praćenih delova" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Izlaz izgradnje ne može biti određen za alokaciju nepraćenih delova" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Stavke alociranja se moraju odrediti" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lokacija zaliha koje će da budu izvor delova (ostavi prazno ukoliko uzimate sa bilo koje lokacije)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Isključi lokaciju" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Isključi stavke zaliha za ovu selektovanu lokaciju" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Zamenljive zalihe" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Stavke zaliha koje su na različitim lokacijama se mogu međusobno menjati" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Zamenske zalihe" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Dozvoli alociranje delova koji su zamenski" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Opcionalne stavke" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Alociraj opcione BOM stavke na nalog za izgradnju" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Greška prilikom startovanja auto alociranja" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "Referenca BOM" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "BOM ID dela" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "BOM ime dela" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Deo dobavljača" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Alocirana količina" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Referenca izgradnje" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Ime kategorije dela" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Može da se prati" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Nasleđen" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Dozvoli varijante" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "BOM stavka" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Alocirane zalihe" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Po narudžbini" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "U proizvodnji" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Spoljašnje zalihe" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Dostupne zalihe" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Dostupne zamenske zalihe" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Dostupne varijante zaliha" @@ -1479,7 +1428,7 @@ msgstr "Otkazano" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Gotovo" @@ -1583,10 +1532,10 @@ msgstr "Tekstualni ključ mora da bude jedinstven" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Korisnik" @@ -1594,7 +1543,7 @@ msgstr "Korisnik" msgid "Price break quantity" msgstr "Prelomna količina cene" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Cena" @@ -1619,7 +1568,7 @@ msgstr "Ime ovog zahteva za izmenu stranice" msgid "Is this webhook active" msgstr "Da li je ovaj zahtev za izmenu aktivan?" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "Da li je rad sa ovom porukom završen?" msgid "Id" msgstr "Id" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Naslov" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Link" @@ -1715,11 +1664,10 @@ msgstr "Čitaj" msgid "Was this news item read?" msgstr "Da li je ova stavka vesti pročitana" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Slika" @@ -1767,7 +1715,7 @@ msgstr "Definicija" msgid "Unit definition" msgstr "Definicija jedinice" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Prilog" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "Stanje logičkog ključa je jednako posebnom ključu u poslovnoj logici" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Vrednost" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "Ime stanja" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Etiketa" @@ -1866,7 +1814,7 @@ msgstr "Boja" msgid "Color that will be displayed in the frontend" msgstr "Boja koja će biti prikazana na korisničkoj strani" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1906,7 +1854,7 @@ msgstr "Logički ključ mora biti među logičkim ključevima referentnog status msgid "Name must be different from the names of the reference status" msgstr "Naziv mora biti različit od naziva u statusu reference" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "Lista odabira" @@ -1922,7 +1870,7 @@ msgstr "Ime liste odabira" msgid "Description of the selection list" msgstr "Opis liste odabira" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "Zaključano" @@ -2006,7 +1954,7 @@ msgstr "Da li je unos ove liste odabira aktivan?" msgid "Barcode Scan" msgstr "Skeniranje bar koda" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Podaci" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "Podaci odgovora za skeniranje bar koda" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Rezultat" @@ -2165,1065 +2113,1081 @@ msgstr "Korisnik nema dozvolu da napravi ili izmeni priloge za ovaj model" msgid "Selection list is locked" msgstr "Lista odabira je zaključana" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Nema grupe" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "URL sajta je zaključan od strane konfiguracije" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Ponovno pokretanje potrebno" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Podešavanje je izmenjeno i zahteva ponovno pokretanje servera" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Migracije na čekanju" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Broj migracija baze podataka koje su na čekanju" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Ime instance servera" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Stringovni opis instance servera" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Ime instance korisnika" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Koristi ime instance u naslovnoj liniji" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Zabrani prikazivanje `O nama`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Prikaži `O nama` samo superkorisnicima" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Ime kompanije" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Interno ime kompanije" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Osnovni URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Osnovni URL za instancu servera" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Podrazumevana valuta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Izaberi osnovnu valutu za određivanje cena" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Podržane valute" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Lista kodova podržanih valuta" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Interval ažuriranja valuta" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Koliko često ažurirati devizne kurseve (podesi na nulu za onemogućti)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dani" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Dodatak za ažuriranje valute" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Dodatak za ažuriranje valute koji će se koristiti" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Skini sa URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Dozvoli skidanje sa udaljenih lokacija slika i datoteka" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Ograničenje veličine skidanja" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Maksimalna dozvoljena veličina slike koja se skida" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "Korisnik-agent koji se koristi za skidanje sa URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Dozvoli premošćavanje koji će se korisnik-agent koristiti za skidanje slika i datoteka sa spoljašnjeg URL (ostavi prazno da se podesi kao podrazumevano)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Stroga validacija URL" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "Traži specifikaciju za validaciju URL-ova" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Ažuriraj interval provere" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Koliko često da proveravam za nova ažuriranja? (podesi na nulu da bi isključio)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Automatsko pravljenje rezervne kopije" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Omogući automatsko pravljenje rezervne kopije baze podataka i medijskih datoteka" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Automatski interval pravljenja rezervnih kopija" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Odredi broj dana između automatskih pravljenja rezervnih kopija" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Interval brisanja zadataka" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Rezultati pozadinskih zadataka biće izbrisani nakon određenog broja dana " -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Interval brisanja evidencije grešaka" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Evidencija grešaka biće izbrisana nakon određenog broja dana" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Interval brisanja obaveštenja" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Korisnička obaveštenja biće izbrisana nakon određenog broja dana" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Podrška za bar kod" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Omogući podršku za bar kod skener preko interfejsa stranice" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "Uskladišti rezultate bar koda" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "Uskladišti rezultate bar koda u bazu podataka" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "Maksimalan broj skeniranja bar koda" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "Maksimalan broj rezultata skeniranja bar koda koji treba da se skladišti" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Kašnjenje unosa bar koda" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Vreme kašnjena obrađivanja ulaza bar koda" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Podrška za bar kod veb kameru" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Omogući skeniranje bar koda pomoću veb kamere u pretraživaču" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Prikaži podatke bar koda" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Prikaži podatke bar koda u pretraživaču kao tekst" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Dodatak za generisanje bar koda" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Dodatak koji će se koristiti kao interni generator podataka bar koda" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Revizije dela" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Omogući polje za reviziju dela" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "Jedino revizija sastavljanja " -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "Dozvoli jedino revizije za sastavne delove" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Dozvoli brisanje iz sastavljanja" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Dozvoli brisanje delova koji su korišćeni u sastavljanju" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Interni broj dela regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Regularni obrazac izraza za podudaranje IPN dela" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Dozvoli duple IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Dozvoli da više delova dele isti IPN" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Dozvoli izmenu IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Dozvoli izmenu IPN vrednosti u toku izmene dela" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Kopiraj BOM podatke dela" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Podrazumevaj kopiranje BOM podataka prilikom pravljenja duplikata dela " -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Kopiraj podatke parametara dela" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Podrazumevaj kopiranje podataka parametara dela prilikom pravljenja duplikata dela" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Kopiraj podatke testiranja dela" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Podrazumevaj kopiranje podataka testiranja dela prilikom pravljenja duplikata dela" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kopiraj šablone parametara kategorije" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Kopiraj šablone parametara kategorije prilikom pravljenja dela" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Šablon" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Podrazumevano je da su delovi šabloni" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Podrazumevano je da se delovi mogu sastavljati od drugih komponenti" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Komponenta" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Podrazumevano je da se delovi mogu koristi kao pod-komponente" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Može da se kupi" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Podrazumevano je da se delovi mogu kupiti" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Može da se proda" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "podrazumevano je da delovi mogu da se prodaju" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Podrazumevano je da delovi mogu da se prate" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuelni" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Podrazumevano je da su delovi virtuelni" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Prikaži ulaze u Pregledima" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Prikaži čarobnjaka za importovanje u nekim pregledima delova" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Prikaži povezane delove" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Prikaži povezane delove za deo" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Inicijalni podaci zaliha" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Dozvoli kreiranje inicijalne alihe prilikom dodavanja novog dela" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Podaci inicijalnog dobavljača" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Dozvoli kreiranje inicijalnog dobavljača prilikom dodavanja novog dela" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Format prikazivanja imena dela" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Format u kome će se prikazivati ime dela" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Podrazumevana ikona za kategoriju dela" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Podrazumevana ikona za kategoriju dela (prazno znači bez ikone)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Zahtevaj jedinice parametara" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Ako su jedinice date, vrednosti parametara moraju odgovarati datim jedinicama" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Minimalan broj decimalnih mesta za cene" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimalan broj decimalnih mesta prilikom generisanja cenovnih podataka" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Maksimalan broj decimalnih mesta za cene" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maksimalan broj decimalnih mesta prilikom generisanja cenovnih podataka" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Koristi cene dobavljača" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Uključi pauziranje cene dobavljača u sveukupnom računanju cene" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Premosti istorijat kupovina" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Prethodne cene narudžbenice zamenjuje pauze cena dobavljača" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Koristi cene stavki u zalihama" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Koristi cene koje su ručno unete u podatke zaliha" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Godina cena stavki u zalihama" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Odstrani stavke zaliha iz kalkulacija cena, koje su starije od ovog broja dana" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Koristi drugačije cene" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Uključi drugačije cene u sveukupnim kalkulacijama cene" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Samo aktivne varijante" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Koristi samo aktivne varijante za određivanje varijante cene" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Vremenski period za ponovno određivanje cena" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Broj dana koji treba da prođe da bi se cene delova automatski ažurirale" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interne cene" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Omogući interne cene za delove" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Premošćavanje internih cena" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Ako su dostupne, interne cene premošćuju kalkulacije opsega cena" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Omogući štampanje etiketa" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Omogući štampanje etiketa preko web interfejsa" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "DPI slike etikete" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI rezolucija prilikom generisanja slikovne datoteke za dodatak koji štampa etikete" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Omogući izveštaje" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Omogući generisanje izveštaja" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Mod otklanjanja grešaka" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Generiši izveštaje u modu za otklanjanje grešaka (izlaz je u HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Greške evidencije izveštaja" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Greške evidentiranja koje se dese prilikom generisanja izveštaja" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Veličina stranice" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Podrazumevana veličina strane za izveštaje u PDF formatu" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Globalno jedinstveni serijski brojevi" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Serijski brojevi za stavke zaliha moraju da budu globalno jedinstveni" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Automatski popuni serijske brojeve" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Automatski popuni serijske brojeve u obrascima" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Obriši ispražnjene zalihe" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Ovo određuje podrazumevano ponašanje kada je stavka zaliha istrošena" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Šablon koda serije" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Šablon za generisanje podrazumevanih kodova serije stavki u zalihama" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Datum isteka zaliha" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Omogući funkcionalnost isteka zaliha" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Prodaja isteklih zaliha" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Dozvoli prodaju isteklih zaliha" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Vreme zastarevanja zaliha" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Broj dana tokom kojih će se stavke zaliha smatrati zastarelim pre isteka" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Izrada sa isteklim zalihama" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Dozvoli izradu sa isteklim zalihama" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Vlasnička kontrola zaliha" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Omogući vlasničku kontrolu nad lokacijama zaliha i stavkama" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Podrazumevana ikonica lokacije zaliha" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Podrazumevana ikonica lokacije zaliha (prazno znači da nema ikonice)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Prikaži instalirane stavke sa zaliha" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Prikaži instalirane stavke sa zaliha u stok tabelama" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Proveri spisak materijala pri instalaciji stavki" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Instalirane stavke sa zaliha moraju postojati u spisku materijala nadređenog dela" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Dozvoli transfer van zaliha" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Dozvoli da stavke sa zaliha koje nisu na zalihama budu premeštane između lokacija zaliha" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Referentni šablon naloga za izradu" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Potreban šablon za generisanje referentnog polja naloga za izradu" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Potreban odgovoran vlasnik" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Odgovoran vlasnik mora biti dodeljen svakom nalogu" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Potreban aktivan deo" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Spreči kreiranje naloga za izradu za neaktivne delove" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Potreban zaključan deo" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Spreči kreiranje nalogaza izradu za otključane delove" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "Potreban validan spisak materijala" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "Spreči kreiranje naloga za izradu pre validacije spiska materijala" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "Potrebno završavanje podređenih naloga" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Spreči završavanje naloga za izradu pre završavanja svih podređenih naloga" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Blokiraj dok ne prođe test" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Spreči završavanje naloga za izradu pre uspešnog završetka svih testova" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Omogući naloge za vraćanje" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Omogući funkcionalnost vraćana u korisničkom interfejsu" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Referentni šablon naloga za vraćanje" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "Potreban šablon pri generisanju referentnog polja naloga za vraćanje" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Izmeni završene naloge za vraćanje" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Dozvoli izmenu naloga za vraćanje nakon što su završeni" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Referentni šablon naloga za prodaju" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Potreban šablon pri generisanju referentnog polja naloga za prodaju" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Podrazumevana isporuka naloga za prodaju" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Omogućava kreiranje podrazumevane isporuke sa nalozima za prodaju" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Izmeni završene naloge za prodaju" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Dozvoli izmenu naloga za prodaju nakon što su isporučeni ili završeni" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Označi isporučene naloge kao završene" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Nalozi za prodaju označeni kao isporučeni će automatski biti završeni, zaobilazeći status isporučen" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Referentni šablon naloga za kupovinu" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Potreban šablon pri generisanju referentnog polja naloga za kupovinu" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Izmeni završene naloge za kupovinu" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Dozvoli izmenu naloga za kupovinu nakon što su isporučeni ili završeni" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Automatski završi naloge za kupovinu" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automatski označi naloge za kupovinu kao završene kada su primljene sve stavke porudžbine" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Omogući zaboravljenu lozinku" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Omogući funkcionalnost zaboravljene lozinke na stranicama za prijavljivanje" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Omogući registraciju" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Omogući registraciju korisnicima na stranicama za prijavljivanje" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Omogući SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Omogući SSO na stranicama za prijavljivanje" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Omogući SSO registraciju" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Omogući registraciju preko SSO za korisnike na stranicaa za prijavljivanje" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "Omogući SSO sinhronizaciju grupa" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "Omogući sinhronizaciju grupa aplikacije sa grupama IdP-a" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "SSO ključ grupe" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "Nazivi grupa dobijaju atribute od IdP-a" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "Mapiranje SSO grupa" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "Mapiranje SSO grupa u lokalne grupe aplikacije. Ukoliko lokalna grupa ne postoji, biće kreirana." -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "Ukloni grupe van SSO" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "Da li će grupe dodeljene korisnicima biti uklonjene ukoliko nisu podržane IdP-om. Onemogućavanje ovoga može dovesti do problema." -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Email neophodan" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Zahtevaj od korisnika da dostavi mejl prilikom registracije" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Automatski popuni SSO korisnike" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automatski popuni korisnikove podatke iz SSO naloga" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Email dva puta" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Pitaj korisnika dva puta za email prilikom registracije" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Lozinka dva puta" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Pitaj korisnika dva puta za lozinku prilikom registracije" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Dozvoljeni domeni" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Ograniči registraciju na određene domene (razdvojeni zapetom, počinju sa @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Grupa pri registrovanju" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Grupa kojoj se novi korisnici dodeljuju pri registraciji. Ukoliko je SSO group sync omogućen, ova grupa će se dodavati ukoliko korisnik ne može da dobije grupu iz IdP-a." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Nametni MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Korisnici moraju koristiti multifaktorsku bezbednost" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Proveri plugine pri pokretanju" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Proveri da li su svi pluginovi instalirani pri pokretanju - omogućeni u kontejnerskim okruženjima" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Proveri ažuriranja pluginova" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "Omogući periodično proveranje pluginova" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Omogući URL integraciju" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Omogući da pluginovi dodaju URL rute" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Omogući integraciju u navigaciju" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Omogući integraciju pluginova u navigaciju" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Omogući integraciju aplikacija" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Omogući pluginovima da dodaju aplikacije" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Omogući integraciju planiranja" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Omogući da plugini izvršavaju planirane zadatke" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Omogući integraciju događaja" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Omogući da plugini odgovaraju na unutrašnje događaje" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "Omogući integraciju interfejsa" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "Omogući integraciju pluginova u korisnički interfejs" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Funkcionalnost popisa" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Omogući funkcionalnost popisa za praćenje nivoa zaliha i računanje vrednosti zaliha" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Ne uključuj eksterne lokacije" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Ne uključuj stavke sa zaliha na eksternim lokacijama u proračune popisa" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Period automatskog popisa" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Broj dana između automatskih beleženja popisa (postaviti na nulu za isključivanje ove mogućnosti)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Interval brisana izveštaja" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Izveštaji o popisu će biti obrisani nakon određenog broja dana" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Prikaži puna imena korisnika" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Prikaži puna imena korisnika umesto korisničkih imena" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "Omogući podatke test stanica" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "Omogući prikupljanje podataka sa test stanica radi rezultata testova" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "Kreiraj šablon pri dodavanju" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "Kreiraj novi test šablon prilikom dodavanja test podataka koji se ne poklapa sa postojećim šablonom" @@ -3544,13 +3508,13 @@ msgstr "Interni deo je aktivan" msgid "Supplier is Active" msgstr "Dobavljač je aktivan" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Proizvođač" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Kompanija" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Link za adresne informacije (eksterni)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Deo proizvođača" @@ -3744,8 +3708,8 @@ msgstr "Izaberi deo" msgid "Select manufacturer" msgstr "Izaberi proizvođača" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "Broj dela proizvođača" @@ -3773,7 +3737,7 @@ msgstr "Naziv parametra" msgid "Parameter value" msgstr "Vrednost parametra" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Jedinice" @@ -3793,11 +3757,11 @@ msgstr "Jedinice pakovanja moraju biti veće od nule" msgid "Linked manufacturer part must reference the same base part" msgstr "Povezani delovi dobavljača moraju referencirati isti osnovni deo" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Dobavljač" @@ -3805,7 +3769,7 @@ msgstr "Dobavljač" msgid "Select supplier" msgstr "Izaberi dobavljača" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Jedinica za držanje dobavljačevih zaliha" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Opis dela dobavljača" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Opis dela dobavljača" msgid "Note" msgstr "Beleška" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "osnovni trošak" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimalna naplata (npr. taksa za slaganje)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Pakovanje" @@ -3861,7 +3825,7 @@ msgstr "Količina pakovanja" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Ukupna količina dostavljena u jednom pakovanju. Ostaviti prazno za pojedinačne stavke." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "više" @@ -3885,15 +3849,15 @@ msgstr "Datum poslednjeg ažuriranja podataka o dostupnosti" msgid "Supplier Price Break" msgstr "Smanjenje cene dobavljača" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Podrazumevana valuta koja se koristi za ovog dobavljača" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Naziv kompanije" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Na zalihama" @@ -3905,7 +3869,7 @@ msgstr "Prilagođen ključ statusa" msgid "Additional status information for this item" msgstr "Dodatne statusne informacije za ovu stavku" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Ključ" @@ -3933,6 +3897,10 @@ msgstr "Nevažeći statusni kod" msgid "Invalid export format" msgstr "Nevažeći format za izvoz" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datoteka" + #: importer/models.py:65 msgid "Data file to import" msgstr "Fajl sa podacima za uvoz" @@ -4009,7 +3977,7 @@ msgstr "Originalni podaci vrste" msgid "Errors" msgstr "Greške" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Važeće" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Količina mora biti pozitivan broj" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Mušterija" @@ -4835,11 +4803,11 @@ msgstr "Spoj stavke" msgid "Merge items with the same part, destination and target date into one line item" msgstr "Spoj stavke sa istim delom, odredištem i ciljanim datumom u jednu stavku porudžbine" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "Jedinica za praćenje zaliha" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Interni broj dela" @@ -4879,7 +4847,7 @@ msgstr "Izaberi odredišnu lokaciju za primljene stavke" msgid "Enter batch code for incoming stock items" msgstr "Unesi šifru ture za nadolazeće stavke sa zaliha" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Datum isteka" @@ -4979,7 +4947,7 @@ msgstr "Sledeći serijski brojevi su nedostupni" msgid "Return order line item" msgstr "Stavka porudžbine naloga za vraćanje" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Statusni kod stavke sa zaliha" @@ -5061,7 +5029,7 @@ msgstr "Označeno zvezdicom" msgid "Filter by starred categories" msgstr "Filtiraj po kategorijama označenim zvezdicom" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "Dubina" @@ -5069,7 +5037,7 @@ msgstr "Dubina" msgid "Filter by category depth" msgstr "Filtriraj po dubini kategorije" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "Vrhovni" @@ -5077,7 +5045,7 @@ msgstr "Vrhovni" msgid "Filter by top-level categories" msgstr "Filtriraj po vrhovnim kategorijama" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "Kaskadno" @@ -5105,1250 +5073,1190 @@ msgstr "Ne uključuj pod-kategorije pod specifičnom kategorijom" msgid "Has Results" msgstr "Ima rezultate" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Dolazeći nalozi za kupovinu" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Odlazeći nalozi za prodaju" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Zalihe proizvedene od strane naloga za izradu" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Zalihe potrebne za nalog za izradu" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Validiraj ceo spisak materijala" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Ova opcija mora biti selektovana" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "Je revizija" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "Ima revizije" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "Spisak materijala validan" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "Deo sklopa se može testirati" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "Deo komponente se može testirati" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "Koristi" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Kategorija dela" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Kategorije delova" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Podrazumevana lokacija" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Podrazumevana lokacija za delove ove kategorije" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Strukturno" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Delovi ne mogu biti direktno dodeljene strukturnoj kategoriji, ali mogu biti dodeljeni podređenim kategorijama." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Podrazumevane ključne reči" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Podrazumevane ključne reči za delove ove kategorije" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ikonica" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ikonica (opciono)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Ova kategorija dela se ne može podesiti kao strukturna jer već ima dodeljene neke delove!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Delovi" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "Ovaj deo se ne može izbrisati jer je zaključan" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "Ovaj deo se ne može izbrisati jer je i dalje aktivan" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "Ovaj deo se ne može obrisati jer se koristi u sklopu" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Nevažeći izbor za nadređeni deo" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Deo '{self}' ne može biti korišćen u spisku materijala za '{parent}' (recursive)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Deo '{parent}' se koristi u spisku materijala za '{self}' (recursive)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "Interni broj dela se mora slagati sa regex šablonom {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "Deo ne može biti revizija samog sebe" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "Ne može se kreirati revizija dela koji je već revizija" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "Šifra revizije mora biti dostavljena" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "Revizije su dozvoljene samo za delove sklopove" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "Ne može se izvršiti revizija šablonskog dela" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "Nadređeni deo mora biti vezan sa istim šablonom" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Stavka sa ovim serijskim brojem već postoji" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Duplirani interni brojevi dela nisu dozvoljeni u podešavanjima dela" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "Identična revizija dela već postoji" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Deo sa ovim nazivom, internim brojem dela i revizijom već postoji" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Delovi ne mogu biti dodeljeni strukturnim kategorijama delova!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Naziv dela" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Jeste šablon" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Da li je ovaj deo šablonski deo?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Da li je ovaj deo varijanta drugog dela?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Varijanta od" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Opis dela (opciono)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Ključne reči" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Ključne reči dela da bi se poboljšala vidljivost u rezultatima pretrage" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Kategorija dela" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "Interni broj dela" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Revizija dela ili broj verzije" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revizija" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "Da li je ovaj deo revizija drugog dela?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "Revizija od" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Gde je ova stavka inače skladištena?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Podrazumevani dobavljač" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Podrazumevani deo dobavljača" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Podrazumevani istek" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Vreme isteka (u danima) za stavke sa zaliha ovog dela" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimalne zalihe" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Minimalni dozvoljen nivo zaliha" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Jedinice mere za ovaj deo" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Da li ovaj deo može biti izgrađen od drugih delova?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Da li ovaj deo može biti korišćen za izradu drugih delova?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Da li ovaj deo ima praćenje za više stavki?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "Da li ovaj deo može imati svoje rezultate testa?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Da li ovaj deo može biti kupljen od eksternih dobavljača?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Da li ovaj deo može biti prodat mušterijama?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Da li je ovaj deo aktivan?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "Zaključani delovi se ne mogu menjati" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Da li je ovo virtuelni deo, kao na primer softver ili licenca?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Suma spiska materijala" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Uskladištena suma spiska materijala" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "Spisak materijala proveren od strane" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Spisak materijala proveren datuma" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Korisnik koji je kreirao" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Vlasnik odgovoran za ovaj deo" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Poslednji popis" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Prodaj više" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Valuta korišćena za vršenje proračuna o cenama" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Minimalna vrednost spiska materijala" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Minimalna vrednost komponenti delova" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Maksimalna vrednost spiska materijala" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Maksimalna vrednost komponenti delova" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Minimalna kupovna vrednost" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Minimalna istorijska kupovna vrednost" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Maksimalna kupovna vrednost" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Maksimalna istorijska kupovna vrednost" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Minimalna interna cena" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Minimalna cena bazirana na internim sniženjima cena" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Maksimalna interna cena" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Maksimalna vrednost bazirana na internim sniženjima cena" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Minimalna cena dobavljača" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Minimalna cena dela od eksternih dobavljača" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Maksimalna cena dobavljača" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Maksimalna cena dela od eksternih dobavljača" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Minimalna vrednost varijanti" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Izračunata minimalna vrednost varijanti delova" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Maksimalna vrednost varijanti" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Izračunata maksimalna vrednost varijanti delova" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Minimalna vrednost" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Promeni minimalnu vrednost" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Maksimalna vrednost" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Promeni maksimalnu vrednost" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Ukupna izračunata minimalna vrednost" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Ukupna izračunata maksimalna vrednost" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Minimalna prodajna cena" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Minimalna prodajna cena bazirana na osnovu sniženja cena" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Maksimalna prodajna cena" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Maksimalna prodajna cena bazirana na osnovu sniženja cena" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Minimalna prodajna vrednost" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Minimalna istorijska prodajna cena" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Maksimalna prodajna vrednost" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Maksimalna istorijska prodajna cena" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Deo za popis" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Broj stavki" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Broj individualnih unosa zaliha u vreme popisa" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Ukupne dostupne zalihe za vreme popisa" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Datum kada je izvršen popis" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Dodatne beleške" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Korisnik koji je izvršio ovaj popis" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Minimalna vrednost zaliha" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Procenjena minimalna vrednost trenutnih zaliha" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Maksimalna vrednost zaliha" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Procenjena maksimalna vrednost trenutnih zaliha" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Izveštaj" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Fajl izveštaja o popisu (interno generisan)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Broj delova" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Broj delova pokrivenih popisom" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Korisnik koji je tražio ovaj izveštaj o popisu" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "Smanjenje prodajne cene dela" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "Šablon testa dela" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Nevažeći naziv šablona - mora da uključuje bar jedan alfanumerički karakter" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "Izbori moraju biti jedinstveni" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "Test šabloni mogu biti kreirani samo za delove koje je moguće testirati" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "Test šablon sa istim ključem već postoji za ovaj deo" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Naziv testa" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Unesi naziv za ovaj test" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "Test ključ" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "Pojednostavljen ključ za test" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Opis testa" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Unesi opis za ovaj test" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Omogućen" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "Da li je ovaj test omogućen?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Neophodno" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Da li je neophodno da ovaj test prođe?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Zahteva vrednost" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Da li ovaj test zahteva vrednost prilikom dodavanja rezultata testa?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Zahteva prilog" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Da li ovaj test zahteva fajl kao prilog prilikom dodavanja rezultata testa?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Izbori" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "Validni izbori za ovaj test (razdvojeni zapetom)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "Šablon parametra dela" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Checkbox parametri ne mogu imati jedinice" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox parametri ne mogu imati izbore" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Ime šablona parametra mora biti jedinstveno" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Naziv parametra" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Fizičke jedinice za ovaj parametar" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Opis parametra" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Polje za potvrdu" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Da li je ovaj parametar checkbox?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Validni izbori za ovaj parametar (razdvojeni zapetom)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "Lista izbora za ovaj parametar" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "Parametar dela" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "Parametar se ne može modifikovati - deo je zaključan" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Nije validan izbor za vrednost parametra" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Nadređeni deo" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Šablon parametra" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Vrednost parametra" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "Šablon parametara kategorije dela" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Podrazumevana vrednost" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Podrazumevana vrednost parametra" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "ID dela ili ime dela" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID dela" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Vrednost jedinstvenog ID-ja dela" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN dela" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Vrednost internog broja dela" - -#: part/models.py:4130 -msgid "Level" -msgstr "Nivo" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Nivo spiska materijala" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje je zaključano" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "Stavke sa spiska materijala se ne mogu modifikovati - sklapanje varijanti je zaključano" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Izaberi nadređeni deo" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Pod-deo" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Izaberi deo koji će biti korišćen u spisku materijala" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Količina spiskova materijala za ovu stavku sa spiska materijala" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Ova stavka sa spiska materijala je opciona" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Ova stavka sa spiska materijala se može potrošiti (nije praćena u nalozima za izradu)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Prestarelo" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Procenjena količina otpada prilikom izrade (apsolutna ili u procentima)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Referenca stavke sa spiska materijala" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Beleške stavki sa spiska materijala" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Suma" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Suma spiska materijala" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Validirano" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Ova stavka sa spiska materijala je validirana" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Biva nasleđeno" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ova stavka sa spiska materijala je nasleđivana od spiska materijala za varijante delova" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Stavke sa zaliha za varijante delova se mogu koristiti za ovu stavku sa spiska materijala" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Količina mora biti ceo broj za delove koji se mogu pratiti" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Zamenski deo mora biti određen" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Zamenska stavka sa spiska materijala" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "Zamenski deo ne može biti isti kao glavni deo" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Nadređena stavka sa spiska materijala" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Zamenski deo" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Deo 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Deo 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Izaberi povezan deo" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "Beleška za ovu relaciju" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Relacija između delova ne može biti kreirana između jednog istog dela" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Identična veza već postoji" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "Nadređena kategorija" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "Nadređena kategorija dela" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Podkategorije" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "Rezultati" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "Broj rezultata napravljenih na osnovu ovog šablona" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Valuta kupovine za ovu stavku sa zaliha" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "Spekulativna količina" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "ID modela" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "Broj delova koji koriste ovaj šablon" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Nema izabranih delova" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Izaberi kategoriju" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Originalni deo" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Izaberi originalni deo za duplikaciju" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Kopiraj sliku" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Kopiraj sliku sa originalnog dela" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Kopiraj spisak materijala" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Kopiraj spisak materijala sa originalnog dela" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Kopiraj parametre" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Kopiraj parametarske podatke sa originalnog dela" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Kopiraj beleške" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Kopiraj beleške sa originalnog dela" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Inicijalna količina zaliha" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Odredi inicijalnu količinu zaliha za ovaj deo. Ukoliko je količina nula, neće biti dodate zalihe." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Inicijalna lokacija zaliha" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Odredi inicijalnu lokaciju zaliha za ovaj deo" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Izaberi dobavljača (ostavi prazno za preskakanje)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Izaberi proizvođača (ostavi prazno za preskakanje)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Broj dela proizvođača" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "Izabrana kompanija nije validan dobavljač" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "Izabrana kompanija nije validan proizvođač" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "Deo proizvođača koji se poklapa sa ovim brojem dela proizvođača već postoji" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "Deo dobavljača koji se opklapa sa ovim brojem dela dobavljača već postoji" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Naziv kategorije" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Izrađivanje" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Stavke sa zaliha" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "Revizije" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Dobavljači" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Ukupne zalihe" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "Nealocirane zalihe" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "Varijante zaliha" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Dupliraj deo" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Kopiraj inicijalne podatke od drugog dela" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Početne zalihe" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Kreiraj deo sa početnom količinom zaliha" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Informacije o dobavljaču" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Dodaj inicijalne informacije o dobavljaču za ovaj deo" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Kopiraj parametre kategorije" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Kopiraj parametarske šablone sa izabrane kategorije dela" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Postojeća slika" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "Ime fajla postojeće slike dela" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "Fajl sa slikom ne postoji" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Ograniči izveštaj o popisu na određeni deo, kao i na bilo koje varijante delova" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Ograniči izveštaj o popisu na određenu kategoriju dela, kao i na bilo koje podređene kategorije" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Ograniči izveštaj o popisu na određenu lokaciju zaliha, kao i na bilo koje podređene lokacije" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Ne uključuj eksterne zalihe" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Ne uključuj stavke sa zaliha u eksternim lokacijama" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Generiši izveštaj" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Generiši izveštaj koji sadrži sračunate podatke sa popisa" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Ažuriraj delove" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Ažuriraj izabrane delove sračunatim podacima popisa" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Funkcionalnost popisa nije omogućena" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Provera pozadinskog radnika nije uspjela" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Minimalna cena" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Izmeni izračunatu vrednost za minimalnu cenu" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Minimalna valuta cene" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Maksimalna cena" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Izmeni izračunatu vrednost maksimalne cene" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Maksimalna valuta cene" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Ažuriraj" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Ažuriraj cene za ovaj deo" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Nija moguća konverzija iz dostavljen valute u {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "Minimalna cena ne sme biti veća od maksimalne cene" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "Maksimalna cena ne sme biti manja od minimalne cene" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "Izaberi nadređeni sklop" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "Izaberi komponentu dela" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Može se izgraditi" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Izaberi deo sa kog će se kopirati spisak materijala" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Ukloni postojeće podatke" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Ukloni postojeće stavke sa spiska materijala pre kopiranja" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Uključi nasleđeno" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Uključi stavke sa spiska materijala koje su nasleđene od šablonskih delova" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Preskoči nevažeće vrste" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Omogući ovu opciju za preskakanje nevažećih vrsta" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Kopiraj zamenske delove" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Kopiraj zamenske delove prilikom duplikacije stavki sa spiska materijala" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Obriši postojeći spisak materijala" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Obriši postojeće stavke sa spiska materijala pre dodavanja" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Nije izabrana kolona dela" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "VIše pronađenih podudarajućih delova" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Nema pronađenih podudarajućih delova" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Deo nije namenjen za korišćenje kao komponenta" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Količina nije dostavljena" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Nije validna količina" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Bar jedna stavka sa spiska materijala je neophodna" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID dela" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Nema poklapanja za podatke sa bar koda" msgid "Match found for barcode data" msgstr "Pronađeno poklapanje za podatke sa bar koda" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "Model nije podržan" @@ -6504,75 +6412,75 @@ msgstr "Primljene stavke sa naloga za kupovinu" msgid "Failed to receive line item" msgstr "Greška pri prijemu stavke porudžbine" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Skenirani podaci bar koda" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "Ime modela za koji će se generisati bar kod" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "Primarni ključ modela objeka za koji će se generisati bar kod" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "Nalog za kupovinu na osnovu kog će se alocirati stavke" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Nalog za kupovinu nije na čekanju" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "Dobavljač od kog će se primiti stavke" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Nalog za kupovinu na osnovu kog će se primati stavke" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Nalog za kupovinu nije ispostavljen" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Lokacija na kojoj će se primati stavke" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Nije moguće izabrati strukturnu lokaciju" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "Nalog za kupovinu na osnovu kog će se primati stavke porudžbine" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "Nalog za kupovinu na osnovu kog će se primati stavke porudžbine" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "Nalog za prodaju na osnovu kog će se alocirati stavke" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "Nalog za prodaju nije na čekanju" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "Stavka naloga za prodaju na osnovu koje će se alocirati stavka" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "Isporuka" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "Isporuka je već isporučena" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Količina za alociranje" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Pruža ugrađenu podršku za bar kodove" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "Kratki prefiks bar koda" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "Prilagođava prefiks koji se koristi za kratke bar kodove, može biti korisno u okruženjima sa više instanci aplikacije" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Notifikacije" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Integrisani odlazeči metodi notifikacija" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Omogući email notifikacije" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Dozvoli slanje mejlova za notifikacije o događajima" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Omogući Slack notifikacije" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Dozvoli slanje Slack poruka za notifikacije" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack dolazeći webhook url" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL koji služi za slanje poruka na Slack kanal" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Otvori link" @@ -6936,7 +6844,7 @@ msgstr "Ugrađen plugin" msgid "Package Plugin" msgstr "Paket plugin" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Plugin" @@ -7155,7 +7063,7 @@ msgstr "Obriši konfiguraciju" msgid "Delete the plugin configuration from the database" msgstr "Obriši konfiguraciju plugina iz baze podataka" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "Stavke" @@ -7281,67 +7189,67 @@ msgstr "Visina (u milimetrima)" msgid "Label height, specified in mm" msgstr "Visina natpisa, u milimetrima" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "Broj stavki koje će biti obrađene" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "Generisanje izveštaja završeno" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "Napredak" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "Napredak generisanja izveštaja" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "Šablon izveštaja" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "Izlazni fajl" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "Generisan izlazni fajl" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "Plugin za izlaz natpisa" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "Šablon natpisa" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Isečak" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Izveštaj isečka fajla" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Opis isečka fajla" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Sredstvo" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Izveštaj fajla sredstva" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Opis fajla sredstva" @@ -7493,123 +7401,123 @@ msgstr "part_image tag zahteva instancu dela" msgid "company_image tag requires a Company instance" msgstr "company_image tag zahteva instancu kompanije" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "Filtriraj po dubini lokacije" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "Filtriraj po nadređenim lokacijama" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "Uključi podlokacije u filtriranim rezultatima" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "Nadređena lokacija" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "Filtriraj po nadređenoj lokaciji" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "Ime dela" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "Ime dela sadrži" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "Ime dela (regex)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "Interni deo broja" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "Interni deo broja sadrži (osetljivo na velika i mala slova)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "Interni broj dela (regex)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "Minimalne zalihe" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "Maksimalne zalihe" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Statusni kod" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Eksterna lokacija" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "Potrošeno od strane naloga za izradu" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "Instalirano u drugu stavku sa zaliha" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Stablo dela" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "Ažurirano pre" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "Ažurirano nakon" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "Popis pre" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "Popis nakon" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Datum isteka pre" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Datum isteka nakon" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Zastarelo" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Količina je neophodna" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Validan deo mora biti dosavljen" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "Dati dobavljač ne postoji" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "Deo dobavljača ima definisanu veličinu pakovanja, ali fleg use_pack_size nije postavljen" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Serijski brojevi ne mogu biti dostavljeni za deo koji nije moguće pratiti" @@ -7629,7 +7537,7 @@ msgstr "Podrazumevana ikonica za sve lokacije koje nemaju podešenu ikonicu (opc msgid "Stock Location" msgstr "Lokacija zaliha" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Lokacija zaliha" @@ -7718,7 +7626,7 @@ msgstr "Izaberi odgovarajući deo dobavljača za ovu stavku sa zaliha" msgid "Where is this stock item located?" msgstr "Gde je locirana ova stavka sa zaliha?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Pakovanje u kom je ova stavka sa zaliha" @@ -7734,7 +7642,7 @@ msgstr "Da li je ova stavka instalirana u drugu stavku?" msgid "Serial number for this item" msgstr "Serijski broj za ovu stavku" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Šifra ture za ovu stavku sa zaliha" @@ -7790,136 +7698,136 @@ msgstr "Cena kupovine jedne jedinice u vreme kupovine" msgid "Converted to part" msgstr "Konvertovano u deo" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Deo nije postavljen kao deo koji je moguće pratiti" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Količina mora biti ceo broj" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Količina ne sme da pređe dostupnu količinu zaliha ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "Serijski brojevi moraju biti dostavljeni kao lista" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Količine se ne poklapaju sa serijskim brojevima" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "Test šablon ne postoji" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Stavka sa zaliha je dodeljena nalogu za prodaju" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Stavka sa zaliha je instalirana u drugu stavku" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Stavka sa zaliha sadrži druge stavke" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Stavka sa zaliha je dodeljena mušteriji" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Stavka sa zaliha je trenutno u produkciji" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Serijalizovane zalihe se ne mogu spojiti" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Dupliraj stavke sa zaliha" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Stavke sa zaliha se moraju odnositi na isti deo" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Stavke sa zaliha se moraju odnositi na isti deo dobavljača" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Statusne šifre zaliha moraju da se poklapaju" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stavka se ne može pomeriti jer nije na zalihama" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "Praćenje stavke sa zaliha" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Ulazne beleške" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "Rezultat testa stavke sa zaliha" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Vrednost mora biti dostavljena za ovaj test" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Prilog mora biti dostavljen za ovaj test" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "Nevažeća vrednost za ovaj test" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Rezultat testa" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Vrednost završetka testa" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Prilog uz test rezultat" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Beleške sa testa" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "Stanica za testiranje" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "Identifikator stanice za testiranje gde je test izvršen" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "Započeto" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "Vreme početka testa" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "Završeno" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "Vreme završetka testa" @@ -7995,7 +7903,7 @@ msgstr "Koristi pakovanja prilikom dodavanja: količina je definisana brojem pak msgid "Supplier Part Number" msgstr "Dobavljački broj dela" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Isteklo" @@ -8024,7 +7932,7 @@ msgstr "Količina ne sme da pređe dostupnu količinu zaliha ({q})" msgid "Enter serial numbers for new items" msgstr "Unesi serijske brojeve za nove stavke" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Odredišna lokacija zaliha" @@ -8101,79 +8009,79 @@ msgstr "Izaberi stavke kojoj će se promeniti status" msgid "No stock items selected" msgstr "Nije izabrana stavka" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Podlokacije" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "Lokacija nadređenih zaliha" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Deo mora biti za prodaju" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Stavka je alocirana nalogu za prodaju" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Stavka je alocirana nalogu za izradu" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Mušterija kojoj će se dodeliti stavke sa zaliha" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "Izabrana kompanija nije mušterija" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Beleške dodeljivanja zaliha" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Lista stavki mora biti dostavljena" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Beleške spajanja zaliha" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Dozvoli neslagajuće dobavljače" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Dozvoli spajanje stavki sa različitim delovima dobavljača" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Dozvoli neslagajući status" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Dozvoli spajanje stavki sa različitim statusnim kodovima" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Bar dve stavke moraju biti dostavljene" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "Nema promena" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Vrednost primarnog ključa stavke" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "Stavka nije na zalihama" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Beleške transakcija zaliha" @@ -8305,11 +8213,11 @@ msgstr "Poslato mušteriji" msgid "Returned from customer" msgstr "Vratila mušterija" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Nemate dozvolu" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Nemate dozvolu da vidite ovu stranicu" @@ -8317,47 +8225,39 @@ msgstr "Nemate dozvolu da vidite ovu stranicu" msgid "Authentication Failure" msgstr "Greška prilikom autentifikacije" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Odjavljeni ste sa aplikacije" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Prijavljivanje" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Strana nije pronađena" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Tražena strana ne postoji" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Interna serverska greška" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "%(inventree_title)s server ima internu grešku" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Pogledaj logove greške u admin interfejsu za više detalja" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Sajt je u fazi održavanja" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Sajt je trenutno u fazi održavanja i biće aktivan uskoro!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo aplikacije" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Potrebno restartovanje servera" @@ -8423,31 +8323,31 @@ msgstr "Klikni na sledeći link da bi video ovaj deo" msgid "Minimum Quantity" msgstr "Minimalna količina" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Korisnici" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Odaberi koje korisnike želiš da dodaš u ovu grupu" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Sledeći korisnici su članovi više grupa" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Lični podaci" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Dozvole" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Značajni datumi" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Token je opozvan" @@ -8455,55 +8355,55 @@ msgstr "Token je opozvan" msgid "Token has expired" msgstr "Token je istekao" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API token" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API tokeni" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Naziv tokena" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Prilagođen naziv tokena" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Datum isteka tokena" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Poslednji put aktivan" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Poslednji put kada je token korišćen" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Opozvano" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Admin" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Popis" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Nalozi za kupovinu" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Nalozi za prodaju" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Nalozi za vraćanje" diff --git a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po index db1385bb75..5eec735304 100644 --- a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API-slutpunkt hittades inte" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Användaren har inte behörighet att se denna modell" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-post (igen)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Bekräfta e-postadress" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Du måste ange samma e-post varje gång." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA Registrering är inaktiverad." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Den angivna primära e-postadressen är inte giltig." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Den angivna e-postdomänen är inte godkänd." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Registrering är stängd." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Kunde inte konvertera {original} till {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" @@ -100,14 +92,14 @@ msgstr "Ange datum" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Anteckningar" @@ -120,42 +112,42 @@ msgstr "Värdet '{name}' visas inte i mönsterformat" msgid "Provided value does not match required pattern: " msgstr "Det angivna värdet matchar inte det obligatoriska mönstret: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Tom serienummersträng" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Serienummret finns redan" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "Ogiltig grupp: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Gruppintervall {group} överstiger tillåtet antal ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Inga serienummer hittades" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Antal unika serienummer ({len(serials)}) måste matcha antal ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Ta bort HTML-taggar från detta värde" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Kinesiska (Förenklad)" msgid "Chinese (Traditional)" msgstr "Kinesiska (Traditionell)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "Logga in på appen" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-postadress" @@ -368,247 +360,205 @@ msgstr "Metadata för plugin" msgid "JSON metadata field, for use by external plugins" msgstr "JSON metadata fält, för användning av externa plugins" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Felaktigt formaterat mönster" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Okänd formatnyckel angiven" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Obligatorisk formatnyckel saknas" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Textfältet kan inte lämnas tomt" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referensen måste matcha obligatoriskt mönster" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referensnumret är för stort" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Ogiltigt val" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Namn" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Beskrivning" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Beskrivning (valfritt)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Sökväg" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown anteckningar (valfritt)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Streckkodsdata" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Tredje parts streckkodsdata" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Streckkodsdata" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Unik hash med streckkodsdata" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Befintlig streckkod hittades" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Serverfel" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Valuta" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Välj valuta från tillgängliga alternativ" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Användarnamn" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Förnamn" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Förnamn på användaren" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Efternamn" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Efternamn på användaren" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Avsändarens E-postadress" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personal" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Har den här användaren behörighet för personal" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superanvändare" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Är den här användaren en superanvändare" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktiv" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Är detta användarkonto aktivt" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Du har inte behörighet att ändra denna användarrollen." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Endast superanvändare kan skapa nya användare" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Ditt konto har skapats." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Använd funktionen för lösenordsåterställning för att logga in" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Välkommen till InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Ogiltigt värde" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Datafil" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Välj fil för uppladdning" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Filen är för stor" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Inga kolumner hittades i filen" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Inga rader hittades i filen" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Inga rader angivna" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Inga datakolumner har angetts" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Saknar obligatorisk kolumn: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Duplicerad kolumn: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Fjärransluten bild" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL för fjärrbildsfil" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Nedladdning av bilder från fjärr-URL är inte aktiverad" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Föregående tillverkning" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Del" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Kategori" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Tillverkningen måste avbrytas innan den kan tas bort" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Valfri" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "Spårad" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Testbar" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Allokerad" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Tillgänglig" msgid "Build Order" msgstr "Byggorder" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Byggordrar" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Tillverknings order referens" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Försäljningsorderreferens" msgid "SalesOrder to which this build is allocated" msgstr "Försäljningsorder till vilken detta bygge allokeras" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Källa Plats" @@ -887,17 +836,17 @@ msgstr "Tillverknings status" msgid "Build status code" msgstr "Tillverkning statuskod" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Batchkod" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Batch-kod för denna byggutdata" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Skapad" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Användare som utfärdade denna tillverknings order" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Ansvarig" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "Extern länk" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Länk till extern URL" @@ -982,7 +931,7 @@ msgstr "Tillverknings order {build} har slutförts" msgid "A build order has been completed" msgstr "En tillverknings order har slutförts" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "Byggutgång är redan slutförd" msgid "Build output does not match Build Order" msgstr "Byggutgång matchar inte bygg order" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Antal måste vara 1 för serialiserat lager" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Artikel i lager" @@ -1094,366 +1043,366 @@ msgstr "Installera till" msgid "Destination stock item" msgstr "Destination lagervara" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Bygg utdata" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Byggutdata matchar inte överordnad version" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Serienummer" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Ange serienummer för att tillverkade produkter" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Plats" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "En lista över tillverkade produkter måste anges" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Lagerplats för skrotade produkter" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Ignorera alla lagerallokeringar för skrotade produkter" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Plats för färdiga produkter" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Status" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Slutför utfall om lager inte har tilldelats fullt ut" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Ta bort ofullständiga produkter" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Ta bort eventuella produkter som inte har slutförts" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Acceptera ofullständig" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Acceptera att det önskade antalet produkter som inte har slutförts" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Tillverknings ordern är ofullständig" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "Avbruten" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Slutför" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Användare" @@ -1594,7 +1543,7 @@ msgstr "Användare" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Länk" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Bild" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Bilaga" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "Etikett" @@ -1866,7 +1814,7 @@ msgstr "Färg" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Ingen grupp" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Omstart krävs" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "Serverinstans (Namn)" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "Serverinstans (Namn)" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Företagsnamn" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Internt företagsnamn" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Bas-URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Bas-URL för serverinstans" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Standardvaluta" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "dagar" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Ladda ner från URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Tillåt nedladdning av bilder och filer från extern URL" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Stöd för streckkoder" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Mall" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Virtuell" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Delar är virtuella som standard" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Visa import i vyer" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Visa importguiden i vissa delvyer" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Visa relaterade delar" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Visa relaterade delar för en del" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Visningsformat för delnamn" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Formatera för att visa artikelnamnet" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Interna priser" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Aktivera etikettutskrift" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Aktivera etikettutskrift från webbgränssnittet" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Etikettbild DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Aktivera rapporter" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Aktivera generering av rapporter" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Debugläge" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Sidstorlek" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Standard sidstorlek för PDF-rapporter" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Förhindra produktion från att slutföras tills alla nödvändiga tester är klara" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Aktivera registrering" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Tillåtna domäner" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Tillverkare" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Företag" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Leverantör" @@ -3805,7 +3769,7 @@ msgstr "Leverantör" msgid "Select supplier" msgstr "Välj leverantör" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "Företagsnamn" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "I lager" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "Ogiltigt exportformat" +#: importer/models.py:64 +msgid "Data File" +msgstr "Datafil" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Kund" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Ikon" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Ikon (valfritt)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Artiklar" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Nyckelord" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Standardleverantör" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Datum" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Underkategorier" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Välj kategori" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Kopiera bild" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Kategorinamn" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Leverantörer" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Generera rapport" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Kontroll av bakgrundsarbetare misslyckades" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Uppdatera" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Statuskod" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Skickat till kund" msgid "Returned from customer" msgstr "Returnerad från kund" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Du har blivit utloggad från InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Användare" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po index 7a0634667b..82f60af21e 100644 --- a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "ไม่พบ API endpoint" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "อีเมล (อีกครั้ง)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "การยืนยันอีเมล" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "ปริมาณสินค้าไม่ถูกต้อง" @@ -100,14 +92,14 @@ msgstr "ป้อนวันที่" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "หมายเหตุ" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "หมายเลขซีเรียลซ้ำกัน" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "ไม่พบหมายเลขซีเรียล" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "" msgid "Chinese (Traditional)" msgstr "" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "อีเมล" @@ -368,247 +360,205 @@ msgstr "ข้อมูลเมตาของปลั๊กอิน" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "ชื่อ" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "คำอธิบาย" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "ข้อมูลบาร์โค้ด" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "บาร์โค้ดนี้มีในระบบแล้ว" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "เกิดข้อผิดพลาดที่เซิร์ฟเวอร์" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "ต้องเป็นตัวเลข" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "สกุลเงิน" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "ยินดีต้อนรับเข้าสู่ Inventree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "ไฟล์ข้อมูล" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "เลือกไฟล์ข้อมูลที่จะอัปโหลด" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "ไฟล์มีขนาดใหญ่เกินไป" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "จำนวนต้องมีค่ามากกว่า 0" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "สถานที่" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "สถานะ" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "ยกเลิกแล้ว" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "สำเร็จแล้ว" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "ผู้ใช้งาน" @@ -1594,7 +1543,7 @@ msgstr "ผู้ใช้งาน" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "ลิงก์" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "ไฟล์แนบ" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "ไฟล์ข้อมูล" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "ชิ้นส่วน" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "จัดส่งให้ลูกค้าแล้ว" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po index 2283f4a551..d136649fbe 100644 --- a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API uç noktası bulunamadı" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Kullanıcının bu modeli görüntüleme izni yok" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "E-posta (tekrar)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "E-posta adresi onayı" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Her seferind eaynı e-posta adresini yazmalısınız." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA Kaydı etkisizleştirildi." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Sağlanan e-posta adresi geçerli değil." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Sağlanan e-posta alanı onaylanmadı." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Kayıt devre dışı." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "{original} birimi {unit} birimine dönüştürülemedi" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" @@ -100,14 +92,14 @@ msgstr "Tarih giriniz" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Notlar" @@ -120,42 +112,42 @@ msgstr "'{name}' değeri desen formatında yer almıyor" msgid "Provided value does not match required pattern: " msgstr "Sağlanan değer gerekli kalıpla eşleşmiyor: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Boş seri numarası dizesi" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Yinelenen seri" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Grup aralığı {group}, izin verilen miktarı aşmaktadır ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Seri numarası bulunamadı" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Benzersiz seri numaralarının sayısı ({len(serials)}) ile miktarın ({expected_quantity}) eşleşmesi gerekmektedir" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Bu değerden HTML etiketlerini kaldır" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Çince (Basitleştirilmiş)" msgid "Chinese (Traditional)" msgstr "Çince (Geleneksel)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "E-posta" @@ -368,247 +360,205 @@ msgstr "Plugin Metaverileri" msgid "JSON metadata field, for use by external plugins" msgstr "Harici eklentiler tarafından kullanım için JSON metadata alanı" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Yanlış biçimlendirilmiş desen" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Belirtilen bilinmeyen format anahtarı" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Gerekli format anahtarı eksik" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Referans alanı boş olamaz" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Referans {pattern} deseniyle mutlaka eşleşmeli" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Referans sayısı çok fazla" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Aynı kaynak altında birden fazla aynı isim kullanılamaz" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Geçersiz seçim" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Adı" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Açıklama" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Açıklama (isteğe bağlı)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Yol" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown notları (isteğe bağlı)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Barkod Verisi" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Üçüncü parti barkod verisi" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Barkod Hash" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Barkod verisinin benzersiz hash'i" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Var olan barkod bulundu" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Sunucu Hatası" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Bir hafta sunucu tarafından kayıt edildi." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Para birimi" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Var olan seçeneklerden bir döviz birimi seçin" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Kullanıcı Adı" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Adı" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Kullanıcının adı" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Soyadı" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Kullanıcının soyadı" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Kullanıcının e-posta adresi" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Personel" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Bu kullanıcının personel izinleri var mı" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Süper Kullanıcı" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Bu kullanıcı bir süper kullanıcı mı" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Aktif" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Bu kullanıcı hesabı etkin mi" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Bu kullanıcı rolünü değiştirmek için izniniz yok." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Sadece süper kullanıcılar yeni kullanıcı oluşturabilir" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Kullanıcı hesabınız oluşturulmuştur." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Giriş yapmak için lütfen şifre sıfırlama fonksiyonunu kullanınız" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "InvenTree'ye Hoşgeldiniz" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Geçersiz değer" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Veri Dosyası" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Yüklemek istediğiniz dosyayı seçin" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Dosya boyutu çok büyük" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Dosyada kolon bulunamadı" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Dosyada satır bulunamadı" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Dosyada satır bulunamadı" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Dosyada uygun kolon bulunamadı" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Gerekli kolon ismi eksik:'{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Tekrarlanan kolon ismi:'{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Uzaktan Görüntüler" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "Uzaktan görüntü dosya URL'si" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Uzak URL'den resim indirmek etkinleştirilmedi" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Üst Yapım İşi" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Parça" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Yapımın silinebilmesi için önce iptal edilmesi gerekir" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Sarf Malzemesi" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "İsteğe Bağlı" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Montaj" @@ -756,7 +705,7 @@ msgstr "Montaj" msgid "Tracked" msgstr "İzlenen" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Test Edilebilir" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Ayrıldı" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Mevcut" msgid "Build Order" msgstr "Yapım İşi Emri" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Yapım İşi Emirleri" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Satış Emri Referansı" msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Kaynak Konum" @@ -887,17 +836,17 @@ msgstr "Yapım İşi Durumu" msgid "Build status code" msgstr "Yapım işi durum kodu" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Sıra numarası" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Oluşturulma tarihi" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Bu yapım işi emrini veren kullanıcı" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Sorumlu" @@ -947,7 +896,7 @@ msgstr "Bu yapım siparişinden sorumlu kullanıcı veya grup" msgid "External Link" msgstr "Harici Bağlantı" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" @@ -982,7 +931,7 @@ msgstr "{build} yapım siparişi tamamlandı" msgid "A build order has been completed" msgstr "Bir yapım siparişi tamamlandı" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "İzlenebilir parçalar için seri numaraları sağlanmalıdır" @@ -998,18 +947,18 @@ msgstr "Yapım işi çıktısı zaten tamamlanmış" msgid "Build output does not match Build Order" msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Miktar sıfırdan büyük olmalıdır" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Miktar çıktı miktarından büyük olamaz" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "{serial} yapım çıktısı gerekli testleri geçemedi" @@ -1022,11 +971,11 @@ msgstr "Yapım Siparişi Satır Ögesi" msgid "Build object" msgstr "Nesne yap" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Seri numaralı stok için miktar bir olmalı" msgid "Selected stock item does not match BOM line" msgstr "Seçilen stok ögesi malzeme listesi satırıyla eşleşmiyor" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Stok Kalemi" @@ -1094,366 +1043,366 @@ msgstr "Kurulduğu yer" msgid "Destination stock item" msgstr "Hedef stok kalemi" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Yapım Düzeyi" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Parça Adı" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Proje Kodu Etiketi" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Alt Yapımlar Oluştur" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Alt yapım siparişlerini otomatik olarak -üret" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Yapım Çıktısı" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Yapım çıktısı üst yapım ile eşleşmiyor" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Çıktı parçası Yapım Siparişi parçası ile eşleşmiyor" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Bu yapım çıktısı zaten tamamlandı" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Bu yapım çıktısı tam ayrılmadı" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "İzlenebilir parçalar için tamsayı miktar gerekir" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Malzeme listesi izlenebilir parçalar içerdiğinden tamsayı miktar gereklidir" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Seri Numaraları" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Yapım işi çıktısı için seri numaraları girin" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Konum" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Yapım çıktısı için stok konumu" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Seri Numaralarını Otomatik Ayır" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Gerekli ögeleri eşleşen seri numaralarıyla otomatik ayır" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Şu seri numaraları zaten varlar veya geçersizler" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Bir yapım çıktıları listesi sağlanmalıdır" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Hurdaya ayrılan çıktılar için stok konumu" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Ayırmaları İptal Et" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Hurdaya ayrılan çıktılar için yapılan tüm stok ayırmalarını iptal et" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Yapım çıktı(larını) hurdaya ayırma nedeni" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Tamamlanan yapım çıktıları içi konum" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Durum" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Tamamlanmamış Ayırmayı Onayla" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Stok tamamen ayrılmamışsa çıktıları tamamla" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Ayrılan Stoku Tüket" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Bu yapım için zaten ayrılmış olan tüm stokları tüket" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Tamamlanmamış Çıktıları Kaldır" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Tamamlanmamış tüm yapım çıktılarını sil" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "İzin verilmedi" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Bu yapım siparişi tarafından tüketildi olarak kabul et" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Bu yapım emrini tamamlamadan önce iade et" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Fazla Ayrılmış Stok" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Yapım siparişine atanan ekstra stok öğelerini nasıl ele almak istersiniz" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Bazı stok ögeleri fazla ayrıldı" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Ayrılmamışı Kabul Et" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Stok öğelerinin bu yapım siparişine tam olarak ayrılmadığını kabul edin" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Gerekli stok tamamen tahsis edilemedi" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Tamamlanmamış Kabul et" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Gerekli sayıda derleme çıktısının tamamlanmadığını kabul edin" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Gerekli yapım işi miktarı tamamlanmadı" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "Yapım siparişinin açık alt yapım emirleri var" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Yapım siparişi üretim durumunda olmalıdır" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Yapım siparişinin tamamlanmamış çıktıları var" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Yapım Satırı" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Yapım çıktısı" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Yapım çıktısı aynı yapımı göstermelidir" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Yapım Satırı Ögesi" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part yapım siparişi aynı olan parçayı göstermelidir" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Öge stokta olmalıdır" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Mevcut miktar ({q}) aşıldı" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "İzlenen parçaların ayrılması için yapım çıktısı belirtilmelidir" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "İzlenmeyen parçaların ayrılması için yapım çıktısı belirlenemez" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Ayrılma ögeleri sağlanmalıdır" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Parçaların alınacağı stok konumu (herhangi bir konumdan almak için boş bırakın)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Konum Çıkar" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Bu seçilen konumdan stok ögelerini içerme" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Birbirinin Yerine Kullanılabilir Stok" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Birden çok konumdaki stok ögeleri birbirinin yerine kullanılabilir" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Yedek Stok" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Yedek parçaların ayrılmasına izin ver" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "İsteğe Bağlı Ögeler" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Sipariş yapmak için isteğe bağlı ML ögelerini ayır" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Otomatik ayırma görevini başlatma başarısız oldu" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "ML Referansı" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "ML Parça Kimliği" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "ML Parça Adı" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Tedarikçi Parçası" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Ayrılan Miktar" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Yapım Referansı" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Parça Sınıfı Adı" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Takip Edilebilir" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Miras Alındı" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Çeşide İzin Ver" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "ML Ögesi" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Ayrılan Stok" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Siparişte" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "Üretimde" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Harici Stok" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Mevcut Stok" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Mevcut Yedek Stok" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Mevcut Turev Stoku" @@ -1479,7 +1428,7 @@ msgstr "İptal edildi" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Tamamlandı" @@ -1583,10 +1532,10 @@ msgstr "Anahtar dizesi benzersiz olmalı" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Kullanıcı" @@ -1594,7 +1543,7 @@ msgstr "Kullanıcı" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Fiyat" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Token" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Başlık" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Bağlantı" @@ -1715,11 +1664,10 @@ msgstr "Oku" msgid "Was this news item read?" msgstr "Haberi okudunuz mu?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Resim" @@ -1767,7 +1715,7 @@ msgstr "Tanımlama" msgid "Unit definition" msgstr "Birim tanımlaması" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Ek" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Değer" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "Renk" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "Model" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Grup yok" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "Site URL'si yapılandırma tarafından kilitlendi" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Yeniden başlatma gerekli" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Sunucunun yeniden başlatılmasını gerektiren bir ayar değişti" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Bekleyen taşıma işlemleri" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Bekleyen veritabanı taşıma sayısı" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Sunucu Örneği adı" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Sunucu örneği için sözce (string) açıklayıcı" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Örnek adını kullan" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Örnek adını başlık çubuğunda kullan" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "`Hakkında` gösterimini kısıtla" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "`Hakkında` kipini yalnızca süper kullanıcılara göster" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Şirket adı" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Dahili şirket adı" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "Ana URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "Sunucu örneğinn temel URL'i" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Varsayılan Para Birimi" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Fiyat hesaplamaları için temel para birimini seçin" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "Desteklenen Para Birimleri" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "Desteklenen para birimi kodlarının listesi" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Döviz Güncelleme Aralığı" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Döviz kurlarını şu sıklıkla güncelle (etkisizleştirmek için sıfır yapın)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "günler" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Döviz Güncelleme Eklentisi" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Kullanılacak döviz güncelleme eklentisi" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "URL'den indir" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Harici URL'den resim ve dosyaların indirilmesine izin ver" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "İndirme Boyutu Sınırı" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Uzak resimler için izin verilebilir maksimum indirme boyutu" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "URL'den indirmek için kullanılan kullanıcı aracısı" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Harici URL'den resim ve dosya indirmek için kullanılan kullanıcı aracısını geçersiz kılmaya izin ver (varsayılan için boş bırakın)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "Sıkı URL Doğrulama" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "URL'leri doğrularken şema tanımlamasını gerekli kıl" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Güncelleme Denetleme Aralığı" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Güncellemeleri şu sıklıkla denetle (etkisizleştirmek için sıfır yapın)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Otomatik Yedekleme" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Veritabanı ve ortam dosyalarını otomatik yedeklemeyi etkinleştir" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Otomatik Yedekleme Aralığı" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Otomatik yedekleme olayları arasındaki gün sayısını belirtin" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Görev Silme Aralığı" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Arkaplan görev sonuçları belirtilen gün sayısı kadar sonra silinecektir" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Hata Günlüğü Silme Aralığı" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Hata günlükleri belirtilen gün sayısı kadar sonra silinecektir" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Bildirim Silme Aralığı" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Kullanıcı bildirimleri belirtilen gün sayısı kadar sonra silinecektir" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Barkod Desteği" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Web arayüzünde barkod tarayıcı desteğini etkinleştir" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Barkod Girdi Gecikmesi" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Barkod girdi işleme gecikme süresi" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Barkod Web Kamerası Desteği" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Tarayıcıda web kamerası aracılığıyla barkod taramaya izin ver" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "Barkod Verisini Göster" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "Barkod verisini tarayıcıda metin olarak görüntüle" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "Barkod Üreteci Eklentisi" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "Dahili barkod üretimi için kullanılacak eklenti" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Parça Revizyonları" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Parça için revizyon alanını etkinleştir" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "Yalnızca Montaj Revizyonu" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "Yalnızca montaj parçaları için revizyona izin ver" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "Montajdan Silmeye İzin Ver" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "Bir montajda kullanılan parçaları silmeye izin ver" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "DPN Regex" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Parça DPN eşleştirmesi için Düzenli İfade Kalıbı (Regex)" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Yinelenen DPN'ye İzin Ver" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Birden çok parçanın aynı DPN'yi paylaşmasına izin ver" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "DPN Düzenlemeye İzin Ver" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Parçayı düzenlerken DPN değiştirmeye izin ver" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Parça ML Verisini Kopyala" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Bir parçayo çoğaltırken varsayılan olarak ML verisini kopyala" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Parça Parametre Verisini Kopyala" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Bir parçayı çoğaltırken varsayılan olarak parametre verisini kopyala" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Parça Test Verisini Kopyala" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Bir parçayı çoğaltırken varsayılan olarak test verisini kopyala" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Kategori Paremetre Sablonu Kopyala" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Şablon" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Parçaları varsayılan olan şablondur" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Bileşen" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Satın Alınabilir" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Satılabilir" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Parçalar varsayılan olarak satılabilir" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Parçalar varsayılan olarak takip edilebilir" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Sanal" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Parçalar varsayılan olarak sanaldır" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Görünümlerde İçe Aktarmayı Göster" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Bazı parça görünümlerinde içe aktarma sihirbazını görüntüle" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "İlgili parçaları göster" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Bir parça için ilgili parçaları göster" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Başlangıç Stok Verisi" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Yeni bir parça eklerken başlangıç stoku oluşturmaya izin ver" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Başlangıç Sağlayıcı Verisi" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Yeni bir parça oluştururken başlangıç sağlayıcı verisi oluşturmaya izin ver" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Parça Adı Görüntüleme Biçimi" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Parça adını görüntüleme biçimi" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Parça Sınıfının Varsayılan Simgesi" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Parça sınıfı için varsayılan simge (boş bırakılırsa simge kullanılmaz)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Parametre Birimlerini Zorunlu Kıl" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Birimler sağlanırsa, parametre değerleri belirtilen birimlere uymalıdır" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Minimum Fiyatlandırma Ondalık Basamakları" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Fiiyatlandırma verisini oluştururken gösterilecek ondalık basamakların minimum sayısı" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Maksimum Fiyatlandırma Ondalık Basamakları" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Fiiyatlandırma verisini oluştururken gösterilecek ondalık basamakların maksimum sayısı" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Sağlayıcı Fiyatlandırmasını Kullan" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Genel fiyatlandırma hesaplamalarına sağlayıcı fiyat aralıklarını ekle" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Satın Alma Geçmişini Geçersiz Kılma" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Geçmiş satınalma siparişi fiyatlandırması, sağlayıcı fiyat aralıklarını geçersiz kılar" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Stok Ögesi Fiyatlandırmasını Kullan" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Fiyatlandırma hesaplamaları için elle girilen stok verisinin fiyatlandırmasını kullan" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Stok Ögesi Fiyatlandırma Yaşı" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Bu gün sayısından daha eski olan stok kalemlerini fiyatlandırma hesaplamalarından hariç tut" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Türev Fiyatlandırması Kullan" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Genel fiyat hesaplamalarına türev fiyatlarını da ekle" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Yalnızca Etkin Türevler" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Türev fiyatlandırması için yalnızca etkin türev parçaları kullan" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Fiyatlandırmayı Yeniden Oluşturma Aralığı" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Parça fiyatlandrımasının otomatik güncellenmesinden önceki gün sayısı" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Dahili Fiyatlar" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Parçalar için dahili fiyatları etkinleştir" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Dahili Fiyat Geçersiz Kılma" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Varsa, dahili fiyatlar fiyat aralığı hesaplarını geçersiz kılar" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Etiket yazdırmayı etkinleştir" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Web arayüzünden etiket yazdırmayı etkinleştir" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "Etiket Resmi DPI Değeri" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Resim dosyaları üretirken etiket yazdırma eklentilerine sağlanacak DPI çözünürlüğü" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Raporları Etkinleştir" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Rapor üretimini etkinleştir" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Hata Ayıklama Modu" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Raporları hata ayıklama modunda üret (HTML çıktısı)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "Rapor Hatalarını Günlüğe Kaydet" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "Raporlar üretirken oluşan hataları günlüğe kaydet" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Sayfa Boyutu" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "PDF raporlar için varsayılan sayfa boyutu" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Küresel Çapta Benzersiz Seri Numaraları" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Stok ögeleri için seri numaraları küresel çapta benzersiz olmalıdır" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Seri Numaralarını Otomatik Doldur" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Seri numaralarını formlarda otomatik doldur" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Tükenen Stoku Sil" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "Bir stok ögesi tükendiğinde varsayılan davranışı belirler" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Parti Kodu Şablonu" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Stok ögelerine varsayılan parti kodlarını üretmek için şablon" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Stok Sona Erme Tarihi" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Stokun sona erme işlevselliğini etkinleştir" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Süresi Dolan Stoku Sat" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Süresi dolan stok satışına izin ver" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Stok Eskime Süresi" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Stok öğelerinin son kullanma tarihi geçmeden eskimiş sayıldığı gün sayısı" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Yapımın Süresi Geçmiş Stoku" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Süresi geçmiş stok ile yapıma izin ver" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Stok Sahipliği Kontrolü" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Stok konumu ve ögeler üzerinde sahiplik kontrolünü etkinleştirin" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Varsayılan Stok Konumu Simgesi" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Stok konumu için varsayılan simge (boşsa simge yok demektir)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Kurulu Stok Ögelerini Göster" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Stok tablolarında kurulu stok ögelerini göster" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "Ögelerin kurulumunu yaparken ML'i kontrol et" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Kurulu stok ögeleri üst parçanın ML'nde mevcut olmalıdır" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "Stok Dışı Aktarıma İzin Ver" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Stokta olmayan ögelerin stok konumları arasında aktarılmasına izin ver" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Yapım Siparişi Referans Kalıbı" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Yapım Siparişi referans alanını üretmek için gerekli kalıp" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "Sorumlu Sahip Gerektir" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "Her siparişe sorumlu bir yetkili atanmalıdır." -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "Aktif Parça Gerekli" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "Etkin olmayan parçalar için yapı sırası oluşturulmasını önleyin." -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "Kilitli Parça Gerekli" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "Kilitlenmemiş parçalar için yapı sırası oluşturulmasını engelle." -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "Geçerli BOM gereklidir." -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "BOM doğrulanmadan yapı sırası oluşturulmasını engelle." -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "Kapalı Alt Siparişler Gerekli" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "Tüm alt siparişler kapatılana kadar yapı sırası tamamlanmasını engelle." -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "Testler Geçene Kadar Engelle" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Tüm gerekli testler geçene kadar yapı çıktıları tamamlanmasını engelle" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "İade Siparişlerini Etkinleştir" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Kullanıcı arayüzünde iade siparişi işlevselliğini etkinleştirin." -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Kullanıcı arayüzünde iade siparişi işlevselliğini etkinleştirin." -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "İade Sipariş referans alanı oluşturmak için gerekli desen" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Tamamlanan İade Siparişlerini Düzenle" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Tamamlandıktan sonra iade emirlerini düzenlemeye izin ver" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Satış Siparişi Referans Şablonu" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Satış Siparişi referans alanını üretmek için gerekli şablon" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Satış Siparişi Varsayılan Gönderi" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Satış siparişleriyle varsayılan gönderi oluşturmayı etkinleştir" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Tamamlanmış Satış Siparişini Düzenle" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Gönderilen veya tamamlanan satış siparişlerini düzenlemeye izin ver" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "Gönderilen Siparişleri Tamamlandı Olarak İmle" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Gönderildi olarak imlenen satış siparişleri \"gönderildi\" durumu atlanarak otomatik olarak tamamlanacaktır" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Satın Alma Siparişi Referans Şablonu" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Satın Alma Siparişi referans alanını üretmek için gerekli şablon" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Tamamlanan Satın Alma Siparişlerini Düzenle" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Gönderildikten veya tamamlandıktan sonra satın alma siparişlerini düzenlemeye izin ver" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Satın Alma Siparişlerini Otomatik Tamamla" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Tüm satır ögeleri alındığında satın alma siparişini otomatikmen tamamlandı olarak imle" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Şifreyi unuttumu etkinleştir" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Giriş yapma sayfasında şifremi unuttum işlevini etkinleştir" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Kayıt olmayı etkinleştir" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Giriş yapma sayfalarında kullanıcılar için kendini kaydetme işlevini etkinleştir" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "E-posta Gerekir" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Kullanıcı ayrıntılarını TOA hesabı verisinden otomatik olarak doldur" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Postayı iki kez gir" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Hesap oluştururken kullanıcıların postalarını iki kez girmelerini iste" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Şifreyi iki kez gir" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Hesap oluştururken kullanıcıların şifrelerini iki kez girmesini iste" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Alanlara izin ver" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Belirli alanlara hesap açmayı kısıtla (virgülle ayrılmış, @ ile başlayan)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Hesap oluştururken grup" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "Yeni kullanıcıların kayıt sırasında atanacağı grup. Eğer TOA grup eşitlemesi etkinse, yalnızca ıdP'den hiçbir grup atanamazsa bu grup ayarlanır." -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "ÇFKD'yi Zorunlu Kıl" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Kullancıların tam isimlerini göster" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Üretici" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Şirket" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "Parça seçin" msgid "Select manufacturer" msgstr "Üretici seçin" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "ÜPN" @@ -3773,7 +3737,7 @@ msgstr "Parametre adı" msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Birim" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Tedarikçi" @@ -3805,7 +3769,7 @@ msgstr "Tedarikçi" msgid "Select supplier" msgstr "Tedarikçi seçin" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "Not" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Paketleme" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "çoklu" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Anahtar" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Veri Dosyası" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Müşteri" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Parça Kategorileri" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Varsayılan Konum" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Bu kategori içindeki parçalar için varsayılan konum" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Parçalar" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Parça adı" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Şablon Mu" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Bu parça bir şablon parçası mı?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Bu parça başka bir parçanın çeşidi mi?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Çeşidi" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Anahtar kelimeler" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "DPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Parça revizyon veya versiyon numarası" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Revizyon" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Varsayılan Tedarikçi" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Varsayılan tedarikçi parçası" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Minimum Stok" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Bu parça diğer parçalardan yapılabilir mi?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Bu parça diğer parçaların yapımında kullanılabilir mi?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Bu parça müşterilere satılabilir mi?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Bu parça aktif mi?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Etkin" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Gerekli" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "Parça ID" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "Parça DPN" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Bu malzeme listesi, çeşit parçalar listesini kalıtsalıdır" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Alt kategoriler" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Stok Kalemleri" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Arka plan çalışanı kontrolü başarısız oldu" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "Parça ID" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Barkod verisi için eşleşme bulunamadı" msgid "Match found for barcode data" msgstr "Barkod verisi için eşleşme bulundu" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Yükseklik [mm]" msgid "Label height, specified in mm" msgstr "Etiket yüksekliği mm olarak belirtilmeli" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "Stok Konumu" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Stok Konumları" @@ -7718,7 +7626,7 @@ msgstr "Bu stok kalemi için tedarikçi parçası seçin" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "Bu öge için seri numarası" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Miktar seri numaları ile eşleşmiyor" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stok kalemi stokta olmadığı için taşınamaz" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "Sağlayıcı Parça Numarası" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Alt konumlar" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "Müşteriye gönderildi" msgid "Returned from customer" msgstr "Müşteriden geri döndü" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Giriş" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Kullanıcılar" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Bu gruba atanacak kullanıcıyı seçin" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Kullanıcı bilgisi" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Yetkiler" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Önemli tarihler" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Satın Alma Emirleri" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Satış Emirleri" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po index eef75daae0..af2ee9f5bd 100644 --- a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "Кінцева точка API не знайдена" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "У користувача немає дозволу на перегляд цієї моделі" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (ще раз)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Підтвердження адреси електронної пошти" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Ви повинні використовувати щоразу однаковий email." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Вказана основна адреса електронної пошти недійсна." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Наданий домен електронної пошти не затверджено." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Реєстрацію вимкнено." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Не вдалося перетворити {original} на {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Невірна кількість" @@ -100,14 +92,14 @@ msgstr "Введіть дату" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Нотатки" @@ -120,42 +112,42 @@ msgstr "" msgid "Provided value does not match required pattern: " msgstr "" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Пустий серійний номер" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Китайська (спрощена)" msgid "Chinese (Traditional)" msgstr "Китайська (Традиційна)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "" @@ -368,247 +360,205 @@ msgstr "" msgid "JSON metadata field, for use by external plugins" msgstr "" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Шлях" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Ім`я" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Прізвище" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Адреса електронної пошти користувача" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Персонал" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Деталь" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "" @@ -756,7 +705,7 @@ msgstr "" msgid "Tracked" msgstr "" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "" msgid "Build Order" msgstr "" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "" @@ -887,17 +836,17 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "" @@ -947,7 +896,7 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "" @@ -982,7 +931,7 @@ msgstr "" msgid "A build order has been completed" msgstr "" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "" @@ -998,18 +947,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1022,11 +971,11 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "" @@ -1094,366 +1043,366 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "" @@ -1479,7 +1428,7 @@ msgstr "" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "" @@ -1583,10 +1532,10 @@ msgstr "" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "" @@ -1594,7 +1543,7 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "" @@ -1619,7 +1568,7 @@ msgstr "" msgid "Is this webhook active" msgstr "" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "" @@ -1683,14 +1632,14 @@ msgstr "" msgid "Id" msgstr "" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "" @@ -1715,11 +1664,10 @@ msgstr "" msgid "Was this news item read?" msgstr "" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "" @@ -1767,7 +1715,7 @@ msgstr "" msgid "Unit definition" msgstr "" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "" -#: common/setting/system.py:174 -msgid "Server Instance Name" -msgstr "" - -#: common/setting/system.py:176 -msgid "String descriptor for the server instance" -msgstr "" - #: common/setting/system.py:180 -msgid "Use instance name" +msgid "Instance ID" msgstr "" #: common/setting/system.py:181 -msgid "Use the instance name in the title-bar" +msgid "Unique identifier for this InvenTree instance" msgstr "" #: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 +msgid "Server Instance Name" +msgstr "" + +#: common/setting/system.py:196 +msgid "String descriptor for the server instance" +msgstr "" + +#: common/setting/system.py:200 +msgid "Use instance name" +msgstr "" + +#: common/setting/system.py:201 +msgid "Use the instance name in the title-bar" +msgstr "" + +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "Чи призначені групи користувачеві повинні бути видалені, якщо вони не є резервним сервером IdP. Відключення цього налаштування може спричинити проблеми безпеки" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "" @@ -3744,8 +3708,8 @@ msgstr "" msgid "Select manufacturer" msgstr "" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "" @@ -3793,11 +3757,11 @@ msgstr "" msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "" @@ -3805,7 +3769,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "" msgid "Note" msgstr "" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "" @@ -3861,7 +3825,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "" @@ -3885,15 +3849,15 @@ msgstr "" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "" @@ -4879,7 +4847,7 @@ msgstr "" msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1249 +5073,1189 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "" - -#: part/models.py:4130 -msgid "Level" -msgstr "" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" +#: part/stocktake.py:218 +msgid "Part ID" msgstr "" #: part/stocktake.py:220 @@ -6407,7 +6315,7 @@ msgstr "" msgid "Match found for barcode data" msgstr "" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "" @@ -6936,7 +6844,7 @@ msgstr "" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "" msgid "Label height, specified in mm" msgstr "" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "" @@ -7493,123 +7401,123 @@ msgstr "" msgid "company_image tag requires a Company instance" msgstr "" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -7629,7 +7537,7 @@ msgstr "" msgid "Stock Location" msgstr "" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "" @@ -7718,7 +7626,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "" @@ -7734,7 +7642,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "" @@ -7790,136 +7698,136 @@ msgstr "" msgid "Converted to part" msgstr "" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "" msgid "Supplier Part Number" msgstr "" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "" @@ -8024,7 +7932,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "" @@ -8101,79 +8009,79 @@ msgstr "" msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "" @@ -8305,11 +8213,11 @@ msgstr "" msgid "Returned from customer" msgstr "" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "" @@ -8317,47 +8225,39 @@ msgstr "" msgid "Authentication Failure" msgstr "" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "" @@ -8423,31 +8323,31 @@ msgstr "" msgid "Minimum Quantity" msgstr "" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "" @@ -8455,55 +8355,55 @@ msgstr "" msgid "Token has expired" msgstr "" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "" diff --git a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po index a0ff20c79e..a255cd73ce 100644 --- a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "API endpoint không tồn tại" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "Người dùng không được phân quyền xem mẫu này" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "Email (nhắc lại)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "Xác nhận địa chỉ email" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "Bạn phải nhập cùng một email mỗi lần." -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "Đăng ký MFA đang tắt." - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "Địa chỉ email chính đã cung cấp không hợp lệ." -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "Miền email được cung cấp không được phê duyệt." -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "Đăng ký bị vô hiệu hóa." - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "Không thể chuyển đổi {original} sang {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "Số lượng cung cấp không hợp lệ" @@ -100,14 +92,14 @@ msgstr "Nhập ngày" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "Ghi chú" @@ -120,42 +112,42 @@ msgstr "Giá trị '{name}' không xuất hiện ở định dạng mẫu" msgid "Provided value does not match required pattern: " msgstr "Giá trị được cung cấp không khớp với mẫu bắt buộc: " -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "Chuỗi số sê-ri trống" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "Trùng lặp sê-ri" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "Khoảng nhóm {group} vượt cho phép số lượng ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "Không tìm thấy số sê-ri" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "Số sê ri duy nhất ({len(serials)}) phải phù hợp số lượng ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "Xóa thẻ HTML từ giá trị này" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "Tiếng Trung (Giản thể)" msgid "Chinese (Traditional)" msgstr "Tiếng Trung (Phồn thể)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "Email" @@ -368,247 +360,205 @@ msgstr "Phụ trợ siêu dữ liệu" msgid "JSON metadata field, for use by external plugins" msgstr "Trường siêu dữ liệu JSON, được sử dụng bởi phụ trợ bên ngoài" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "Mẫu được định dạng không thích hợp" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "Khóa định dạng không rõ ràng đã được chỉ định" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "Thiếu khóa định dạng cần thiết" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "Trường tham chiếu không thể rỗng" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "Tham chiếu phải phù hợp với mẫu yêu cầu" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "Số tham chiếu quá lớn" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "Tên trùng lặp không thể tồn tại trong cùng cấp thư mục" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "Lựa chọn sai" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "Tên" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "Mô tả" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "Mô tả (tùy chọn)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "Đường dẫn" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Ghi chú markdown (không bắt buộc)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "Dữ liệu mã vạch" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "Dữ liệu mã vạch của bên thứ ba" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "Dữ liệu băm mã vạch" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "Chuỗi băm duy nhất của dữ liệu mã vạch" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "Mã vạch đã tồn tại" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "Lỗi máy chủ" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "Lỗi đã được ghi lại bởi máy chủ." -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "Phải là một số hợp lệ" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "Tiền tệ" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "Chọn tiền tệ trong các tùy chọn đang có" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "Tên người dùng" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "Tên" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "Họ người dùng" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "Họ" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "Tên người dùng" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "Địa chỉ email của người dùng" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "Nhân viên" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "Người dùng có quyền nhân viên" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "Superuser" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "Người dùng này là superuser" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "Hoạt động" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "Tài khoản người dùng đang hoạt động" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "Bạn không có quyền thay đổi vai trò của người dùng này." -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "Chỉ có siêu người dùng là có thể tạo người dùng mới" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "Tài khoản của bạn đã được tạo." -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "Xin hãy sử dụng chức năng tạo lại mật khẩu để đăng nhập" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "Chào mừng đến với InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "Giá trị không hợp lệ" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "Tập tin dữ liệu" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "Chọn tệp tin để tải lên" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "Tệp tin quá lớn" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "Không tìm thấy cột nào trong tệp tin" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "Không tìm thấy dòng nào trong tệp tin" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "Chưa có dữ liệu" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "Chưa cung cấp cột dữ liệu" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "Thiếu cột bắt buộc: '{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "Nhân bản cột: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "Hình ảnh từ xa" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "URL của tệp hình ảnh bên ngoài" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "Chức năng tải hình ảnh từ URL bên ngoài không được bật" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "Phiên bản cha" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "" msgid "Part" msgstr "Nguyên liệu" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "Danh mục" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "Bạn dựng phải được hủy bỏ trước khi có thể xóa được" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "Vật tư tiêu hao" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "Tuỳ chọn" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "Lắp ráp" @@ -756,7 +705,7 @@ msgstr "Lắp ráp" msgid "Tracked" msgstr "Đã theo dõi" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "Có thể kiểm tra" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "Đã cấp phát" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "Có sẵn" msgid "Build Order" msgstr "Tạo đơn hàng" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "Tạo đơn hàng" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "Tham chiếu đơn đặt bản dựng" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "Tham chiếu đơn đặt bản dựng" msgid "SalesOrder to which this build is allocated" msgstr "Đơn đặt bán hàng với bản dựng này đã được phân bổ" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "Địa điểm nguồn" @@ -887,17 +836,17 @@ msgstr "Trnạg thái bản dựng" msgid "Build status code" msgstr "Mã trạng thái bản dựng" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "Mã lô hàng" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "Mã lô cho đầu ra bản dựng này" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "Ngày tạo" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "Người dùng người đã được phân công cho đơn đặt bản dựng này" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "Chịu trách nhiệm" @@ -947,7 +896,7 @@ msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt bản msgid "External Link" msgstr "Liên kết bên ngoài" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "Liên kết đến URL bên ngoài" @@ -982,7 +931,7 @@ msgstr "Đơn đặt bản dựng {build} đã được hoàn thành" msgid "A build order has been completed" msgstr "Một đơn đặt bản dựng đã được hoàn thành" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "Số sê-ri phải được cung cấp cho hàng hoá có thể theo dõi" @@ -998,18 +947,18 @@ msgstr "Đầu ra bản dựng đã được hoàn thiện" msgid "Build output does not match Build Order" msgstr "Đầu ra bản dựng không phù hợp với đơn đặt bản dựng" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "Số lượng phải lớn hơn 0" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "Số lượng không thể lớn hơn số lượng đầu ra" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Tạo đầu ra {serial} chưa vượt qua tất cả các bài kiểm tra" @@ -1022,11 +971,11 @@ msgstr "Tạo mục đơn hàng" msgid "Build object" msgstr "Dựng đối tượng" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "Số lượng phải là 1 cho kho sê ri" msgid "Selected stock item does not match BOM line" msgstr "Hàng trong kho đã chọn không phù hợp với đường BOM" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "Kho hàng" @@ -1094,366 +1043,366 @@ msgstr "Cài đặt vào" msgid "Destination stock item" msgstr "Kho hàng đích" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "Tạo cấp" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "Tên sản phẩm" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "Nhãn mã dự án" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "Tạo mới bản dựng con" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "Tự động tạo đơn hàng con" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "Đầu ra bản dựng" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "Đầu ra xây dựng không hợp với bản dựng cha" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "Đầu ra sản phẩm không phù hợp với bản dựng đơn đặt hàng" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "Đầu ra bản dựng này đã được hoàn thành" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "Đầu ra bản dựng này chưa được phân bổ đầy đủ" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "Điền số lượng cho đầu ra bản dựng" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "Số lượng nguyên dương cần phải điền cho sản phẩm có thể theo dõi" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Cần nhập số lượng nguyên dương, bởi vì hóa đơn vật liệu chứa sản phẩm có thể theo dõi" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "Số sê-ri" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "Nhập vào số sêri cho đầu ra bản dựng" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "Địa điểm" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "Vị trí tồn kho cho sản phẩm" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "Số sêri tự cấp" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "Tự động cấp số seri phù hợp cho hàng hóa được yêu cầu" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "Số sêri sau đây đã tồn tại hoặc không hợp lệ" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "Danh sách đầu ra bản dựng phải được cung cấp" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "Vị trí kho cho đầu ra phế phẩm" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "Hủy phân bổ" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "Hủy bất kỳ phân kho nào cho đầu ra phế phẩm" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "Lý do loại bỏ đầu ra bản dựng" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "Vị trí cho đầu ra bản dựng hoàn thiện" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "Trạng thái" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "Chấp nhận phân kho dang dở" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "Hoàn hiện đầu ra nếu kho chưa được phân bổ hết chỗ trống" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "Xử lý phân bổ kho hàng" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "Tiêu thụ bất kỳ hàng tồn kho nào đã được phân bổ cho dự án này." -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "Xóa toàn bộ đầu ra chưa hoàn thành" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "Xóa bất kỳ đầu ra bản dựng nào chưa được hoàn thành" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "Chưa được cấp phép" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "Chấp nhận trạng thái tiêu hao bởi đơn đặt bản dựng này" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "Phân bổ trước khi hoàn thiện đơn đặt bản dựng này" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "Kho quá tải" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Bạn muốn thế nào để xử lý hàng trong kho được gán thừa cho đơn đặt bản dựng" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "Một vài hàng hóa đã được phân bổ quá thừa" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "Chấp nhận chưa phân bổ được" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Chấp nhận hàng hóa không được phân bổ đầy đủ vào đơn đặt bản dựng này" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "Kho được yêu cầu chưa được phân bổ hết không gian" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "Chấp nhận không hoàn thành" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "Chấp nhận số yêu cầu của đầu ra bản dựng chưa được hoàn thành" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "Số lượng bản dựng được yêu cầu chưa được hoàn thành" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "Tạo đơn hàng có các đơn hàng đang mở" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "Tạo đơn hàng phải ở trạng thái sản xuất." -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "Đơn đặt bản dựng có đầu ra chưa hoàn thiện" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "Lộ giới" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "Đầu ra bản dựng" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "Đầu ra bản dựng phải chỉ đến bản dựng tương ứng" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "Mục chi tiết bản dựng" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part phải trỏ đến phần tương tự của đơn đặt bản dựng" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "Hàng hóa phải trong kho" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Số lượng có sẵn ({q}) đã bị vượt quá" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "Đầu ra bản dựng phải được xác định cho việc phân sản phẩm được theo dõi" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Đầu ra bản dựng không thể chỉ định cho việc phân sản phẩm chưa được theo dõi" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "Hàng hóa phân bổ phải được cung cấp" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Vị trí kho nơi sản phẩm được lấy ra (để trống để lấy từ bất kỳ vị trí nào)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "Ngoại trừ vị trí" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "Không bao gồm hàng trong kho từ vị trí đã chọn này" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "Kho trao đổi" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Hàng trong kho thuộc nhiều vị trí có thể dùng thay thế được cho nhau" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "Kho thay thế" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "Cho phép phân kho sản phẩm thay thế" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "Mục tùy chọn" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "Phân bổ các mục hóa đơn vật liệu tùy chọn đến đơn đặt bản dựng" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "Không thể khởi động tác vụ phân bổ tự động." -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "BOM liên quan" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "ID hàng hoá BOM" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "Tên hàng hoá BOM" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "Sản phẩm nhà cung cấp" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "Số lượng đã phân bổ" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "Tạo liên quan" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "Tên danh mục hàng hoá" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "Có thể theo dõi" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "Được kế thừa" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "Cho phép biến thể" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "Mục BOM" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "Phân kho" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "Bật đơn hàng" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "Đang sản xuất" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "Kho ngoài" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "Số hàng tồn" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "Kho hàng thay thế" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "Hàng tồn kho có sẵn" @@ -1479,7 +1428,7 @@ msgstr "Đã hủy" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "Hoàn thành" @@ -1583,10 +1532,10 @@ msgstr "Chuỗi khóa phải duy nhất" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "Người dùng" @@ -1594,7 +1543,7 @@ msgstr "Người dùng" msgid "Price break quantity" msgstr "Số lượng giá phá vỡ" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "Giá" @@ -1619,7 +1568,7 @@ msgstr "Tên của webhook này" msgid "Is this webhook active" msgstr "Webhook có hoạt động không" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "Chữ ký số" @@ -1683,14 +1632,14 @@ msgstr "Công việc trong tin nhắn này đã kết thúc?" msgid "Id" msgstr "Mã" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "Tiêu đề" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "Liên kết" @@ -1715,11 +1664,10 @@ msgstr "Đọc" msgid "Was this news item read?" msgstr "Tin này đã được đọc?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "Hình ảnh" @@ -1767,7 +1715,7 @@ msgstr "Định nghĩa" msgid "Unit definition" msgstr "Định nghĩa đơn vị" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "Đính kèm" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "Giá trị" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "" @@ -1866,7 +1814,7 @@ msgstr "" msgid "Color that will be displayed in the frontend" msgstr "" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "" @@ -1906,7 +1854,7 @@ msgstr "" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "Dữ liệu" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "Kết quả" @@ -2165,1065 +2113,1081 @@ msgstr "" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "Không có nhóm" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "URL trang web đã bị khóa bởi cấu hình" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "Cần khởi động lại" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "Một thiết lập đã bị thay đổi yêu cầu khởi động lại máy chủ" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "Chuyển dữ liệu chờ xử lý" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "Số đợt nâng cấp cơ sở dữ liệu chờ xử lý" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "Tên thực thể máy chủ" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "Mô tả chuỗi cho thực thể máy chủ" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "Sử dụng tên thực thể" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "Sử dụng tên thực thể trên thanh tiêu đề" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "Cấm hiển thị `giới thiệu`" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "Chỉ hiển thị cửa sổ `giới thiệu` với siêu người dùng" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "Tên công ty" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "Tên công ty nội bộ" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "URL cơ sở" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "URL cơ sở cho thực thể máy chủ" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "Tiền tệ mặc định" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "Chọn tiền tệ chính khi tính giá" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "Tần suất cập nhật tiền tệ" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "Mức độ thường xuyên để cập nhật tỉ giá hối đoái (điền 0 để tắt)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "ngày" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "Phần mở rộng cập nhật tiền tệ" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "Phần mở rộng cập nhật tiền tệ được sử dụng" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "Tải về từ URL" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "Cho phép tải ảnh và tệp tin từ xa theo URL bên ngoài" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "Giới hạn kích thước tải xuống" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "Kích thước tải xuống tối đa với hình ảnh từ xa" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "User-agent được dùng để tải xuống theo URL" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "Cho phép ghi đè user-agent được dùng để tải về hình ảnh và tệp tin từ xa theo URL bên ngoài (để trống nghĩa là dùng mặc định)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "Thời gian kiểm tra bản cập nhật" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "Mức độ thường xuyên để kiểm tra bản cập nhật (điền 0 để tắt)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "Sao lưu tự động" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "Bật tính năng sao lưu tự động cơ sở dữ liệu và tệp tin đa phương tiện" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "Khoảng thời gian sao lưu tự động" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "Xác định số ngày giữa các kỳ sao lưu tự động" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "Khoảng thời gian xóa tác vụ" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "Kết quả tác vụ chạy ngầm sẽ bị xóa sau số ngày được chỉ định" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "Khoảng thời gian xóa nhật ký lỗi" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "Nhật ký lỗi sẽ bị xóa sau số ngày được chỉ định" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "Khoảng thời gian xóa thông báo" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "Thông báo sẽ bị xóa sau số ngày được chỉ định" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "Hỗ trợ mã vạch" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "Bật hỗ trợ máy quét mã vạch trong giao diện web" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "Độ trễ quét mã vạch" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "Thời gian trễ xử lý đầu đọc mã vạch" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "Hỗ trợ mã vạch qua webcam" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "Cho phép quét mã vạch qua webcam bên trong trình duyệt" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "Phiên bản Sản phẩm" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "Bật trường phiên bản cho sản phẩm" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "Mẫu IPN" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "Mẫu dùng nhanh phổ biến dành cho tìm IPN sản phẩm" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "Cho phép trùng IPN" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "Cho phép nhiều sản phẩm dùng IPN giống nhau" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "Cho phép sửa IPN" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "Cho phép đổi giá trị IPN khi sửa một sản phẩm" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "Sao chép dữ liệu BOM của sản phẩm" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "Sao chép dữ liệu BOM mặc định khi nhân bản 1 sản phẩm" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "Sao chép dữ liệu tham số sản phẩm" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "Sao chép dữ liệu tham số mặc định khi nhân bản 1 sản phẩm" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "Chép thông tin kiểm thử sản phẩm" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "Sao chép dữ liệu kiểm thử mặc định khi nhân bản 1 sản phẩm" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "Sao chéo mẫu tham số danh mục" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "Sao chéo mẫu tham số danh mục khi tạo 1 sản phẩm" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "Mẫu" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "Sản phẩm là mẫu bởi mặc định" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "Sản phẩm có thể lắp giáp từ thành phần khác theo mặc định" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "Thành phần" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "Sản phẩm có thể được sử dụng mặc định như thành phần phụ" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "Có thể mua" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "Sản phẩm mặc định có thể mua được" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "Có thể bán" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "Sản phẩm mặc định có thể bán được" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "Sản phẩm mặc định có thể theo dõi được" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "Ảo" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "Sản phẩm mặc định là số hóa" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "Hiển thị Nhập liệu trong khung xem" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "Hiển thị đồ thuật nhập dữ liệu trong một số khung nhìn sản phẩm" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "Hiển thị sản phẩm liên quan" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "Hiện sản phẩm liên quan cho 1 sản phẩm" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "Số liệu tồn kho ban đầu" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "Cho phép tạo tồn kho ban đầu khi thêm 1 sản phẩm mới" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "Dữ liệu nhà cung cấp ban đầu" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Cho phép tạo dữ liệu nhà cung cấp ban đầu khi thêm 1 sản phẩm mới" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "Định dạng tên sản phẩm hiển thị" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "Định dạng để hiển thị tên sản phẩm" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "Biểu tượng mặc định của danh mục sản phẩm" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "Biểu tượng mặc định của danh mục sản phẩm (để trống nghĩa là không có biểu tượng)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "Bắt buộc đơn vị tham số" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "Nếu đơn vị được cung cấp, giá trị tham số phải phù hợp với các đơn vị xác định" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "Vị trí phần thập phân giá bán tối thiểu" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Số vị trí thập phân tối thiểu cần hiển thị khi tạo dữ liệu giá" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "Vị trí phần thập phân giá bán tối đa" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Số vị trí thập phân tối đa cần hiển thị khi tạo dữ liệu giá" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "Sử dụng giá bán nhà cung cấp" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Bao gồm giá phá vỡ cả nhà cung cấp trong tính toán giá tổng thể" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "Ghi đè lịch sử mua hàng" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Giá đơn hàng đặt mua trước đó ghi đè giá phá vỡ của nhà cung cấp" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "Sử dụng giá hàng hóa trong kho" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Dùng giá bán từ dữ liệu kho nhập vào thủ công đối với bộ tính toán giá bán" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "Tuổi giá kho hàng" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Loại trừ hàng hóa trong kho cũ hơn số ngày ngày từ bảng tính giá bán" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "Sử dụng giá biến thể" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "Bao gồm giá biến thể trong bộ tính toán giá tổng thể" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "Chỉ các biến thể hoạt động" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "Chỉ sử dụng sản phẩm biến thể hoạt động để tính toán giá bán biến thể" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "Tần suất tạo lại giá" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "Số ngày trước khi giá sản phẩm được tự động cập nhật" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "Giá nội bộ" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "Bật giá nội bộ cho sản phẩm" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "Ghi đè giá nội bộ" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "Nếu khả dụng, giá nội bộ ghi đè tính toán khoảng giá" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "Bật in tem nhãn" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "Bật chức năng in tem nhãn từ giao diện web" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "DPI hỉnh ảnh tem nhãn" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Độ phân giải DPI khi tạo tệp hình ảnh để cung cấp cho plugin in ấn tem nhãn" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "Bật báo cáo" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "Cho phép tạo báo cáo" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "Chế độ gỡ lỗi" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "Tạo báo cáo trong chế độ gỡ lỗi (đầu ra HTML)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "Khổ giấy" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "Kích thước trang mặc định cho báo cáo PDF" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "Sê ri toàn cục duy nhất" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "Số sê ri cho hàng trong kho phải là duy nhất trong toàn hệ thống" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "Tự động điền số sê ri" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "Tự động điền số sê ri vào biểu mẫu" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "Xóa kho đã hết hàng" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "Mẫu sinh mã theo lô" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "Mẫu tạo mã theo lô mặc định cho hàng trong kho" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "Quá hạn trong kho" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "Bật chức năng quá hạn tồn kho" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "Bán kho quá hạn" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "Cho phép bán hàng kho quá hạn" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "Thời gian hàng cũ trong kho" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "Số ngày hàng trong kho được xác định là cũ trước khi quá hạn" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "Dựng kho quá hạn" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "Cho phép xây dựng với kho hàng quá hạn" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "Kiểm soát sở hữu kho" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "Bật chức năng kiểm soát sở hữu kho với địa điểm và hàng trong kho" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "Biểu tượng địa điểm kho mặc định" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "Biểu tượng địa điểm kho hàng mặc định (trống nghĩa là không có biểu tượng)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "Hiển thị hàng hóa đã lắp đặt" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "Hiển thị hàng trong kho đã được lắp đặt trên bảng kho" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "Mã tham chiếu đơn đặt bản dựng" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt bản dựng" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "Bật đơn hàng trả lại" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "Bật chức năng đơn hàng trả lại trong giao diện người dùng" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "Mẫu tham chiếu đơn hàng trả lại" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "Sửa đơn hàng trả lại đã hoàn thành" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "Cho phép sửa đơn hàng trả lại sau khi đã hoàn thành rồi" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "Mẫu tham chiếu đơn đặt hàng" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "Mẫu bắt buộc để tạo trường tham chiếu đơn đặt hàng" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "Vận chuyển mặc định đơn đặt hàng" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "Cho phép tạo vận chuyển mặc định với đơn đặt hàng" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "Sửa đơn đặt hàng đã hoàn thành" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Cho phép sửa đơn đặt hàng sau khi đã vận chuyển hoặc hoàn thành" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "Mẫu tham chiếu đơn đặt mua" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt mua" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "Sửa đơn đặt mua đã hoàn thành" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Cho phép sửa đơn đặt mua sau khi đã vận chuyển hoặc hoàn thành" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "Tự động hoàn thành đơn đặt mua" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "Bật quên mật khẩu" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "Bật chức năng quên mật khẩu trong trang đăng nhập" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "Bật đăng ký" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "Cho phép người dùng tự đăng ký tại trang đăng nhập" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "Bật SSO" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "Cho phép SSO tại trang đăng nhập" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "Bật đăng ký SSO" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Cho phép người dùng tự đăng ký SSO tại trang đăng nhập" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "Yêu cầu email" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "Yêu cầu người dùng cung cấp email để đăng ký" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "Người dùng tự động điền SSO" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "Tự động điền thông tin chi tiết từ dữ liệu tài khoản SSO" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "Thư 2 lần" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "Khi đăng ký sẽ hỏi người dùng hai lần thư điện tử của họ" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "Mật khẩu 2 lần" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "Khi đăng ký sẽ hỏi người dùng hai lần mật khẩu của họ" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "Các tên miền được phép" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Cấm đăng ký với 1 số tên miền cụ thể (dấu phẩy ngăn cách, bắt đầu với dấu @)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "Nhóm khi đăng ký" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "Bắt buộc MFA" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "Người dùng phải sử dụng bảo mật đa nhân tố." -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "Kiểm tra phần mở rộng khi khởi động" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Kiểm tra toàn bộ phần mở rộng đã được cài đặt khi khởi dộng - bật trong môi trường ảo hóa" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "Kiểm tra cập nhật plugin" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "Bật tích hợp URL" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "Bật phần mở rộng để thêm định tuyến URL" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "Bật tích hợp điều hướng" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "Bật phần mở rộng để tích hợp thanh định hướng" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "Bật tích hợp ứng dụng" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "Bật phần mở rộng để thêm ứng dụng" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "Cho phép tích hợp lập lịch" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "Bật phẩn mở rộng để chạy các tác vụ theo lịch" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "Bật tích hợp nguồn cấp sự kiện" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "Bật phần mở rộng để trả lời sự kiện bên trong" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "Chức năng kiểm kê" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Bật chức năng kiểm kê theo mức độ ghi nhận kho và tính toán giá trị kho" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "Ngoại trừ vị trí bên ngoài" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Loại trừ hàng trong kho thuộc địa điểm bên ngoài ra khỏi tính toán kiểm kê" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "Giai đoạn kiểm kê tự động" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Số ngày giữa ghi chép kiểm kê tự động (đặt không để tắt)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "Khoảng thời gian xóa báo cáo" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Báo cáo kiểm kê sẽ bị xóa sau số ngày xác định" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "Hiển thị tên đầy đủ của người dùng" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "Hiển thị tên đầy đủ thay vì tên đăng nhập" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "" @@ -3544,13 +3508,13 @@ msgstr "" msgid "Supplier is Active" msgstr "" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "Nhà sản xuất" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "Doanh nghiêp" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "Liên kết thông tin địa chỉ (bên ngoài)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "Sản phẩm nhà sản xuất" @@ -3744,8 +3708,8 @@ msgstr "Chọn sản phẩm" msgid "Select manufacturer" msgstr "Chọn nhà sản xuất" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "" @@ -3773,7 +3737,7 @@ msgstr "Tên tham số" msgid "Parameter value" msgstr "Giá trị tham số" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "Đơn vị" @@ -3793,11 +3757,11 @@ msgstr "Đơn vị đóng gói phải lớn hơn không" msgid "Linked manufacturer part must reference the same base part" msgstr "Sản phẩm nhà sản xuất đã liên kết phải tham chiếu với sản phẩm cơ bản tương tự" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "Nhà cung cấp" @@ -3805,7 +3769,7 @@ msgstr "Nhà cung cấp" msgid "Select supplier" msgstr "Chọn nhà cung cấp" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "Đơn vị quản lý kho nhà cung cấp" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "Mô tả sản phẩm nhà cung cấp" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "Mô tả sản phẩm nhà cung cấp" msgid "Note" msgstr "Ghi chú" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "chi phí cơ sở" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "Thu phí tối thiểu (vd: phí kho bãi)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "Đóng gói" @@ -3861,7 +3825,7 @@ msgstr "Số lượng gói" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Tổng số lượng được cung cấp trong một gói đơn. Để trống cho các hàng hóa riêng lẻ." -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "nhiều" @@ -3885,15 +3849,15 @@ msgstr "Ngày cập nhật cuối thông tin tồn kho" msgid "Supplier Price Break" msgstr "" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "Tiền tệ mặc định được sử dụng cho nhà cung cấp này" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "Còn hàng" @@ -3905,7 +3869,7 @@ msgstr "" msgid "Additional status information for this item" msgstr "" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "Khóa" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "" +#: importer/models.py:64 +msgid "Data File" +msgstr "Tập tin dữ liệu" + #: importer/models.py:65 msgid "Data file to import" msgstr "" @@ -4009,7 +3977,7 @@ msgstr "" msgid "Errors" msgstr "" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "Hợp lệ" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "Số lượng phải là số dương" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "Khách hàng" @@ -4835,11 +4803,11 @@ msgstr "" msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "Mã sản phẩm nội bộ" @@ -4879,7 +4847,7 @@ msgstr "Chọn vị trí đích cho hàng hóa đã nhận" msgid "Enter batch code for incoming stock items" msgstr "Nhập mã lô cho hàng trong kho đang đến" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "Ngày hết hạn" @@ -4979,7 +4947,7 @@ msgstr "" msgid "Return order line item" msgstr "Dòng riêng biệt đơn hàng trả lại" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "Mã trạng thái mặt hàng" @@ -5061,7 +5029,7 @@ msgstr "" msgid "Filter by starred categories" msgstr "" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "" @@ -5069,7 +5037,7 @@ msgstr "" msgid "Filter by category depth" msgstr "" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "" @@ -5077,7 +5045,7 @@ msgstr "" msgid "Filter by top-level categories" msgstr "" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "" @@ -5105,1250 +5073,1190 @@ msgstr "" msgid "Has Results" msgstr "" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "Đơn đặt mua vào" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "Đơn hàng bán ra" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "Kho sản xuất bởi Đơn đặt bản dựng" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "Kho được yêu cầu cho đơn đặt bản dựng" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "Xác minh toàn bộ hóa đơn vật liệu" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "Tùy chọn này phải được chọn" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "Danh mục sản phẩm" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "Danh mục sản phẩm" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "Điểm bán mặc định" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "Vị trí mặc định cho sản phẩm trong danh mục này" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "Cấu trúc" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Hàng hóa không được gán trực tiếp vào danh mục có cấu trúc nhưng có thể được gán vào danh mục con." -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "Từ khóa mặc định" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "Từ khóa mặc định cho sản phẩm trong danh mục này" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "Biểu tượng" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "Biểu tượng (tùy chọn)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Bạn không thể thay đổi cấu trúc nhóm sản phẩm này vì một số sản phẩm đã được gắn với nó rồi!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "Nguyên liệu" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "Lựa chọn sai cho sản phẩm cha" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Không thể dùng sản phẩm '{self}' trong BOM cho '{parent}' (đệ quy)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Sản phẩm '{parent}' được dùng trong BOM cho '{self}' (đệ quy)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN phải phù hợp mẫu biểu thức chính quy {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "Hàng trong kho với số sê ri này đã tồn tại" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN trùng lặp không được cho phép trong thiết lập sản phẩm" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "Sản phẩm với Tên, IPN và Duyệt lại đã tồn tại." -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "Sản phẩm không thể được phân vào danh mục sản phẩm có cấu trúc!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "Tên sản phẩm" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "Là Mẫu" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "Sản phẩm này có phải là sản phẩm mẫu?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "Đây có phải là 1 biến thể của sản phẩm khác?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "Biến thể của" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "Mô tả (không bắt buộc)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "Từ khóa" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "Từ khóa sản phẩm để cải thiện sự hiện diện trong kết quả tìm kiếm" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "Danh mục sản phẩm" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "Số phiên bản hoặc bản duyệt lại sản phẩm" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "Phiên bản" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "Hàng hóa này sẽ được cất vào đâu?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "Nhà cung ứng mặc định" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "Nhà cung ứng sản phẩm mặc định" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "Hết hạn mặc định" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "Thời gian hết hạn (theo ngày) để nhập kho hàng hóa cho sản phẩm này" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "Kho tối thiểu" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "Cấp độ kho tối thiểu được phép" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "Đơn vị đo cho sản phẩm này" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "Sản phẩm này có thể được dựng từ sản phẩm khác?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "Sản phẩm này có thể dùng để dựng các sản phẩm khác?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "Sản phẩm này có đang theo dõi cho hàng hóa duy nhất?" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "Sản phẩm này có thể mua được từ nhà cung ứng bên ngoài?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "Sản phẩm này có thể được bán cho khách hàng?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "Sản phẩm này đang hoạt động?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "Đây là sản phẩm ảo, ví dụ như sản phẩm phần mềm hay bản quyền?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "Giá trị tổng kiểm BOM" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "Giá trị tổng kiểm BOM đã được lưu" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "BOM kiểm tra bởi" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "Ngày kiểm tra BOM" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "Tạo người dùng" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "Trách nhiệm chủ sở hữu cho sản phẩm này" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "Kiểm kê cuối cùng" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "Bán nhiều" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "Tiền được dùng để làm đệm tính toán giá bán" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "Chi phí BOM tối thiểu" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối thiểu" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "Chi phí BOM tối đa" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối đa" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "Chi phí mua vào tối thiểu" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "Chi phí mua vào tối thiểu trong lịch sử" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "Chi phí mua tối đa" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "Chi phí thành phần sản phẩm tối đa trong lịch sử" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "Giá nội bộ tối thiểu" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "Chi phí tối thiểu dựa trên phá vỡ giá nội bộ" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "Giá nội bộ tối đa" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "Chi phí tối đa dựa trên phá vỡ giá nội bộ" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "Giá nhà cung ứng tối thiểu" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "Giá sản phẩm tối thiểu từ nhà cung ứng bên ngoài" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "Giá nhà cung ứng tối đa" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "Giá sản phẩm tối đã từ nhà cung ứng bên ngoài" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "Giá trị biến thể tối thiểu" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "Chi phí tối thiểu của sản phẩm biến thể đã tính" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "Chi phí biến thể tối đa" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "Chi phí tối đa của sản phẩm biến thể đã tính" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "Chi phí tối thiểu" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "Ghi đề chi phí tối thiểu" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "Chi phí tối đa" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "Ghi đề chi phí tối đa" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "Chi phí tối thiểu tính toán tổng thể" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "Chi phí tối đa tính toán tổng thể" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "Giá bán thấp nhất" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "Giá bán tối thiểu dựa trên phá giá" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "Giá bán cao nhất" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "Giá bán cao nhất dựa trên phá giá" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "Chi phí bán hàng tối thiểu" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "Giá bán hàng tối thiểu trong lịch sử" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "Giá bán hàng tối đa" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "Giá bán hàng tối đa trong lịch sử" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "Sản phẩm dành cho kiểm kê" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "Tổng số hàng" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "Số mục kho độc lậo tại thời điểm kiểm kê" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "Tống số kho tại thời điểm kiểm kê" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "Ngày" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "Kiểm kê đã thực hiện" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "Ghi chú bổ sung" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "Người dùng đã thực hiện đợt kiểm kê này" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "Chi phí kho tối thiểu" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "Chi phí kho tối thiểu ước tính của kho đang có" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "Chi phí kho tối đa" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "Chi phí kho tối đa ước tính của kho đang có" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "Báo cáo" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "Tệp báo cáo kiểm kê (được sinh nội bộ)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "Bộ đếm sản phẩm" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "Số sản phẩm đã được bao quát bởi kiểm kê" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "Người dùng đã yêu cầu báo cáo kiểm kê này" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "Lựa chọn phải duy nhất" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "Tên kiểm thử" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "Nhập tên cho kiểm thử" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "Mô tả kiểm thử" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "Nhập mô tả cho kiểm thử này" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "Đã bật" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "Bắt buộc" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "Kiểm thử này bắt buộc phải đạt?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "Giá trị bắt buộc" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "Kiểm thử này yêu cầu 1 giá trị khi thêm một kết quả kiểm thử?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "Yêu cầu đính kèm" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "Kiểm thử này yêu cầu tệp đính kèm khi thêm một kết quả kiểm thử?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "Lựa chọn" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "Tham số hộp kiểm tra không thể có đơn vị" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "Tham số hộp kiểm tra không thể có lựa chọn" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "Tên tham số mẫu phải là duy nhất" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "Tên tham số" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "Đơn vị vật lý cho tham số này" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "Mô tả tham số" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "Ô lựa chọn" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "Tham số này có phải là hộp kiểm tra?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "Lựa chọn hợp lệ từ tham số này (ngăn cách bằng dấu phẩy)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "Lựa chọn sai cho giá trị tham số" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "Sản phẩm cha" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "Mẫu tham số" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "Giá trị tham số" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "Giá trị mặc định" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "Giá trị tham số mặc định" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "Tên hoặc mã sản phẩm" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "ID sản phẩm" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "Giá trị mã sản phẩm duy nhất" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "IPN sản phẩm" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "Giá trị IPN sản phẩm" - -#: part/models.py:4130 -msgid "Level" -msgstr "Cấp độ" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "Cấp độ BOM" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "Chọn sản phẩm cha" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "Sản phẩm phụ" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "Chọn sản phẩm được dùng trong BOM" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "Số lượng BOM cho mục BOM này" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "Mục BOM này là tùy chọn" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Mục BOM này bị tiêu hao (không được theo dõi trong đơn đặt bản dựng)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "Dư thừa" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Số lượng bản dựng lãng phí ước tính (tuyệt đối hoặc phần trăm)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "Tham chiếu mục BOM" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "Ghi chú mục BOM" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "Giá trị tổng kiểm" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "Giá trị tổng kiểm dòng BOM" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "Đã xác minh" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "Mục BOM này là hợp lệ" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "Nhận thừa hưởng" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Mục BOM này được thừa kế bởi BOM cho sản phẩm biến thể" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Hàng trong kho cho sản phẩm biến thể có thể được dùng bởi mục BOM này" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "Số lượng phải là giá trị nguyên dùng cho sản phẩm có thể theo dõi được" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "Sản phẩm phụ phải được chỉ định" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "Sảm phẩm thay thế mục BOM" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "Sản phẩm thay thế không thể giống sản phẩm chủ đạo" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "Hàng hóa BOM cha" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "Sản phẩm thay thế" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "Sản phẩm 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "Sản phẩm 2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "Chọn sản phẩm liên quan" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "Không thể tạo mối quan hệ giữa một sản phẩm và chính nó" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "Đã tồn tại mối quan hệ trùng lặp" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "Phụ mục" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "Loại tiền mua hàng của hàng hóa này" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "Chưa chọn sản phẩm" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "Chọn danh mục" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "Sản phẩm gốc" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "Chọn sản phẩm gốc để nhân bản" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "Sao chép ảnh" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "Sao chép hình ảnh từ sản phẩm gốc" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "Sao chép BOM" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "Sao chép định mức nguyên vật liệu từ sản phẩm gốc" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "Sao chép thông số" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "Sao chép thông tin tham số từ sản phẩm gốc" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "Sao chép ghi chú" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "Sao chép ghi chú từ sản phẩm gốc" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "Số liệu tồn kho ban đầu" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Chỉ ra số lượng tồn kho ban đầu cho sản phẩm. Nếu điền là không, không thêm kho nào." -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "Vị trí kho ban đầu" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "Chỉ định vị trí kho ban đầu cho sản phẩm này" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "Chọn nhà cung cấp (hoặc để trống để bỏ qua)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "Chọn nhà sản xuất (hoặc để trống để bỏ qua)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "Mã số nhà sản xuất" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "Công ty đã chọn không phải là nhà cung ứng hợp lệ" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "Công ty đã chọn không phải là nhà sản xuất hợp lệ" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "Mã số nhà sản xuất khớp với MPN này đã tồn tại" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "Mã số nhà cung cấp khớp với SKU này đã tồn tại" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "Tên danh mục" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "Đang dựng" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "Hàng trong kho" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "Nhà cung cấp" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Tổng số lượng" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "Nhân bản sản phẩm" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "Sao chép dữ liệu ban đầu từ sản phẩm khác" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "Số liệu kho ban đầu" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "Tạo sản phẩm với số lượng tồn kho ban đầu" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "Thông tin nhà cung cấp" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "Thêm thông tin nhà cung cấp ban đầu cho sản phẩm này" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "Sao chép thông số nhóm hàng" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "Sao chép mẫu tham số từ nhóm sản phẩm được chọn" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "Ảnh hiện có" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "Tên tệp của ảnh sản phẩm hiện hữu" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "Tệp hình ảnh không tồn tại" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Hạn chế báo cáo kiểm kê với sản phẩm riêng biệt và sản phẩm biến thể bất kỳ" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Hạn chế báo cáo kiểm kê với danh mục sản phẩm riêng biệt và danh mục con bất kỳ" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Hạn chế báo cáo kiểm kê với vị trí kho riêng biệt và vị trí con bất kỳ" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "Ngoại trừ kho bên ngoài" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "Loại trừ hàng trong kho của vị trí bên ngoài" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "Tạo báo cáo" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "Tạo tệp báo cáo chứa dữ liệu kiểm kê đã tính toán" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "Cập nhật sản phẩm" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "Cập nhật sản phẩm cụ thể với dữ liệu kiểm kê đã tính" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "Chức năng kiểm kê chưa được bật" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "Nhân công chạy ngầm kiểm tra thất bại" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "Giá thấp nhất" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "Giá trị tính toán ghi đè cho giá tối thiểu" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "Tiền tế giá tối thiểu" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "Giá cao nhất" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "Giá trị tính toán ghi đè cho giá tối đa" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "Tiền tế giá tối đa" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "Cập nhật" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "Cập nhật giá cho sản phẩm này" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Không thể chuyển đổi từ tiền tệ đã cung cấp cho {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "Giá tối thiểu không được lớn hơn giá tối đa" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "Giá tối đa không được nhỏ hơn giá tối thiểu" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "Có thể dựng" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "Chọn sản phẩm để sao chép định mức nguyên vật liệu" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "Xóa dữ liệu đã tồn tại" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "Xóa mục BOM đã tồn tại trước khi sao chép" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "Bao gồm thừa hưởng" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "Bao gồm mục BOM được thừa hưởng từ sản phẩm mẫu" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "Bỏ qua dòng không hợp lệ" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "Bật tùy chọn này để bỏ qua dòng không hợp lệ" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "Sao chép sản phẩm thay thế" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "Sao chép sản phẩm thay thế khi nhân bản hàng hóa BOM" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "Dọn dẹp BOM đang tồn tại" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "Xóa mục BOM đang tồn tại trước khi tải lên" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "Chưa chỉ ra cột sản phẩm" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "Tìm thấy nhiều sản phẩm phù hợp" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "Không tìm thấy sản phẩm nào" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "Sản phẩm không được chỉ định như là một thành phần" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "Chưa cung cấp số lượng" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "Số lượng không hợp lệ" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "Buộc phải nhập ít nhất một mục BOM" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "ID sản phẩm" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "Không tìm thấy dữ liệu mã vạch phù hợp" msgid "Match found for barcode data" msgstr "Đã tìm thấy dữ liệu mã vạch phù hợp" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "" @@ -6504,75 +6412,75 @@ msgstr "Mục dòng đơn đặt mua đã nhận" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "Thông tin mã vạch đã quét" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "Đơn đặt mua không chờ xử lý" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "Đơn đặt mua để nhận hàng hóa" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "Đơn đặt mua vẫn chưa được thực hiện" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "Địa điểm để nhận hàng hóa vào bên trong" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "Không thể chọn một địa điểm có cấu trúc" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "Số lượng cần phân bổ" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "Cung cấp hỗ trợ gốc cho mã vạch" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Thông báo InvenTree" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "Phương thức thông báo ra ngoài đã tích hợp" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "Bật thông báo qua email" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "Cho phép gửi email cho thông báo sự kiện" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "Bật thông báo qua Slack" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "Cho phép gửi tin nhắn qua kênh Slack cho thông báo sự kiện" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "URL webhook đầu vào của Slack" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "URL dùng để gửi tin nhắn đến một kênh của Slack" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "Mở liên kết" @@ -6936,7 +6844,7 @@ msgstr "Plugin có sẵn" msgid "Package Plugin" msgstr "" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "Phần bổ sung" @@ -7155,7 +7063,7 @@ msgstr "" msgid "Delete the plugin configuration from the database" msgstr "" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "" @@ -7281,67 +7189,67 @@ msgstr "Chiều cao [mm]" msgid "Label height, specified in mm" msgstr "Chiều cao nhãn, tính theo mm" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "Mẫu trích" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "Tệp báo cáo mẫu" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "Mô tả tệp báo cáo mẫu" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "Tài sản" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "Tệp báo cáo tài sản" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "Mô tả tệp báo cáo tài sản" @@ -7493,123 +7401,123 @@ msgstr "thẻ part_image yêu cầu 1 thực thể sản phẩm" msgid "company_image tag requires a Company instance" msgstr "thẻ company_image yêu cầu một thực thể doanh nghiệp" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "Mã trạng thái" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "Địa điểm bên ngoài" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "Cây sản phẩm" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "Ngày hết hạn trước đó" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "Ngày hết hạn sau đó" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "Ế" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "Bắt buộc nhập số lượng" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "Phải cung cấp sản phẩm hợp lệ" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "Sản phẩm nhà cung cấp đã đưa không tồn tại" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "Sản phẩm nhà cung cấp có kích thước đóng gói được định nghĩa nhưng cờ use_pack_size chưa được thiết lập" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Số sê-ri không thê được cung cấp cho sản phẩm không thể theo dõi" @@ -7629,7 +7537,7 @@ msgstr "Biểu tượng mặc định cho vị trí không được đặt biể msgid "Stock Location" msgstr "Kho hàng" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "Vị trí kho hàng" @@ -7718,7 +7626,7 @@ msgstr "Chọn sản phẩm nhà cung cấp khớp với hàng hóa trong kho n msgid "Where is this stock item located?" msgstr "Hàng trong kho này được đặt ở đâu?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "Đóng gói hàng hóa này được lưu trữ lại" @@ -7734,7 +7642,7 @@ msgstr "Mục này đã được cài đặt trong mục khác?" msgid "Serial number for this item" msgstr "Số sê ri cho mục này" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "Mã lô cho hàng trong kho này" @@ -7790,136 +7698,136 @@ msgstr "Giá mua riêng lẻ tại thời điểm mua" msgid "Converted to part" msgstr "Đã chuyển đổi sang sản phẩm" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "Chưa đặt sản phẩm thành có thể theo dõi" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "Số lượng phải là số nguyên" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Số lượng không thể vượt quá số lượng trong kho đang có ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "Số lượng không khớp với số sêri" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "Hàng trong kho đã được gán vào đơn hàng bán" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "Hàng trong kho đã được cài đặt vào hàng hóa khác" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "Hàng trong kho chứa hàng hóa khác" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "Hàng trong kho đã được gắn với một khách hàng" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "Hàng trong kho hiện đang sản xuất" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "Không thể hợp nhất kho nối tiếp" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "Mặt hàng trùng lặp" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm tương tự" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm nhà cung cấp tương tự" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "Mã trạng thái kho phải phù hợp" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "Không thể xóa mặt hàng không ở trong kho" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "Ghi chú đầu vào" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "Phải cung cấp giá trị cho kiểm thử này" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "Phải tải liên đính kèm cho kiểm thử này" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "Kết quả kiểm thử" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "Giá trị đầu ra kiểm thử" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "Đính kèm kết quả kiểm thử" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "Ghi chú kiểm thử" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "" @@ -7995,7 +7903,7 @@ msgstr "Sử dụng kích thước đóng gói khi thêm: Số lượng được msgid "Supplier Part Number" msgstr "Số hiệu hàng hoá nhà cung cấp" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "Đã hết hạn" @@ -8024,7 +7932,7 @@ msgstr "Số lượng phải không vượt quá số lượng trong kho đang c msgid "Enter serial numbers for new items" msgstr "Điền số sêri cho hàng hóa mới" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "Vị trí kho đích" @@ -8101,79 +8009,79 @@ msgstr "Chọn mặt hàng để đổi trạng thái" msgid "No stock items selected" msgstr "Không có mặt hàng nào được chọn" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "Kho phụ" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "Sản phẩm phải có thể bán được" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "Hàng hóa được phân bổ đến một đơn hàng bán" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "Hàng hóa được phân bổ đến một đơn đặt bản dựng" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "Khách hàng được gán vào các mặt hàng" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "Công ty đã chọn không phải là khách hàng" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "Ghi chú phân bổ kho" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "Phải cung cấp danh sách mặt hàng" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "Ghi chú gộp kho" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "Cho phép nhiều nhà cung không khớp" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "Cho phép mặt hàng cùng sản phẩm nhà cung cấp khác phải được gộp" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "Cho phép trạng thái không khớp" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "Cho phép mặt hàng với mã trạng thái khác nhau để gộp lại" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "Cần cung cấp ít nhất hai mặt hàng" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "Giá trị khóa chính mặt hàng" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "Ghi chú giao dịch kho" @@ -8305,11 +8213,11 @@ msgstr "Gửi đến khách hàng" msgid "Returned from customer" msgstr "Bị trả lại từ khách hàng" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "Quyền truy cập bị từ chối" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "Bạn không có quyền xem trang này." @@ -8317,47 +8225,39 @@ msgstr "Bạn không có quyền xem trang này." msgid "Authentication Failure" msgstr "Lỗi xác thực" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "Bạn đã đăng xuất từ InvenTree." -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "Đăng nhập" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "Trang không tồn tại" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "Trang được yêu cầu không tồn tại" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "Lỗi nội bộ máy chủ" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "Máy chủ %(inventree_title)s thông báo lỗi nội bộ" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "Tham khảo nhật ký lỗi trong giao diện quản trị để biết thêm chi tiết" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "Site đang được bảo trì" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "Khu vực đang được bảo trì và sẽ mở lại sớm thôi!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "Logo InvenTree" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "Yêu cầu khởi động máy chủ" @@ -8423,31 +8323,31 @@ msgstr "Nhấp chuột vào liên kết dưới đây để xem sản phẩm nà msgid "Minimum Quantity" msgstr "Số lượng tối thiểu" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "Người dùng" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "Chọn người dùng được chỉ định cho nhóm này" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "Người dùng sau là thành viên của nhiều nhóm" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "Thông tin cá nhân" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "Quyền" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "Ngày quan trọng" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "Mã thông báo đã bị thu hồi" @@ -8455,55 +8355,55 @@ msgstr "Mã thông báo đã bị thu hồi" msgid "Token has expired" msgstr "Mã thông báo đã hết hạn" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "Mã thông báo API" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "Mã thông báo API" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "Tên mã thông báo" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "Tên tùy chỉnh mã thông báo" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "Ngày hết hạn mã thông báo" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "Xem lần cuối" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "Lần cuối mã thông báo được sử dụng" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "Đã thu hồi" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "Quản trị" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "Kiểm kê" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "Đơn mua hàng" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "Đơn hàng bán" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "Đơn hàng trả lại" diff --git a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po index 1f320698e2..5c71e7f673 100644 --- a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "未找到 API 端点" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "提供了无效的单位" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "提供了无效的过滤器" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "未找到要删除的项目" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "用户没有权限查阅当前模型。" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "电子邮件 (重复)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "邮箱地址已确认" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "您必须每次输入相同的电子邮件。" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA注册已禁用。" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "提供的主电子邮件地址无效。" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "提供的邮箱域名未被批准。" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "注册已禁用。" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "不能将 {original} 转换到 {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "提供的数量无效" @@ -100,14 +92,14 @@ msgstr "输入日期" msgid "Invalid decimal value" msgstr "无效的数值" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "备注" @@ -120,42 +112,42 @@ msgstr "值' {name}' 未出现在模式格式中" msgid "Provided value does not match required pattern: " msgstr "提供的值与所需模式不匹配:" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "无法一次序列化超过 1000 个项目" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "序號為空白" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "复制序列号" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "无效群组: {group}" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "组范围 {group} 超出了允许的数量 ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "未找到序列号" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "唯一序列号的数量 ({len(serials)}) 必须与数量匹配 ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "从这个值中删除 HTML 标签" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "数据包含禁止的 markdown 内容" @@ -343,11 +335,11 @@ msgstr "中文 (简体)" msgid "Chinese (Traditional)" msgstr "中文 (繁体)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "登录应用程序" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "电子邮件" @@ -368,247 +360,205 @@ msgstr "外掛程式Metadata" msgid "JSON metadata field, for use by external plugins" msgstr "外掛程式使用的JSON Metadata欄位" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "格式錯誤" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "指定了不明的格式鍵值" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "缺少必須的格式鍵值" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "參考欄位不能空白" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "參考欄位並須符合格式" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "參考編號過大" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "同一個上層元件下不能有重複的名字" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "無效的選項" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "名稱" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "描述" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "描述(選填)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "路径" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown 註記(選填)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "條碼資料" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "第三方條碼資料" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "條碼雜湊值" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "條碼資料的唯一雜湊值" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "發現現有條碼" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "任务失败" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "伺服器錯誤" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "伺服器紀錄了一個錯誤。" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "必须是有效数字" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "貨幣" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "從可用選項中選擇貨幣" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "用户名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "用户的名字(不包括姓氏)" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "姓" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "用户的姓氏" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "用户的电子邮件地址" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "职员" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "此用户是否拥有员工权限" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "超级用户" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "此用户是否为超级用户" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "激活" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "此用户帐户是否已激活" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "您沒有更改這個使用者角色的權限" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "只有管理員帳戶可以建立新的使用者" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "您的帳號已經建立完成。" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "請使用重設密碼功能來登入" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "欢迎使用 InventTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "无效值" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "数据文件" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "选择要上传的数据文件" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "不支持的文件格式" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "文件过大" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "在文件中没有找到列" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "在文件中没有找到数据行" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "没有提供数据行" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "没有提供数据列" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "缺少必需的列:'{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "重复列: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "远程图片" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "远程图片文件的 URL" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "未启用从远程 URL下载图片" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "从远程URL下载图像失败" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "上層生產工單" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "包含变体" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "包含变体" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "包含变体" msgid "Part" msgstr "零件" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "类别" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "工單必須被取消才能被刪除" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "耗材" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "非必須項目" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "装配" @@ -756,7 +705,7 @@ msgstr "装配" msgid "Tracked" msgstr "追蹤中" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "可测试" @@ -768,7 +717,7 @@ msgstr "未结算订单" msgid "Allocated" msgstr "已分配" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "可用数量" msgid "Build Order" msgstr "生产订单" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "生产订单" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "生產工單代號" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "銷售訂單代號" msgid "SalesOrder to which this build is allocated" msgstr "這張生產工單對應的銷售訂單" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "來源倉儲地點" @@ -887,17 +836,17 @@ msgstr "生產狀態" msgid "Build status code" msgstr "生產狀態代碼" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "批号" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "此产出的批号" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "建立日期" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "發布此生產工單的使用者" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "負責人" @@ -947,7 +896,7 @@ msgstr "負責此生產工單的使用者或群組" msgid "External Link" msgstr "外部連結" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "外部URL連結" @@ -982,7 +931,7 @@ msgstr "生產工單 {build} 已經完成" msgid "A build order has been completed" msgstr "一張生產工單已經完成" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "对于可跟踪的零件,必须提供序列号" @@ -998,18 +947,18 @@ msgstr "产出已完成" msgid "Build output does not match Build Order" msgstr "产出与生产订单不匹配" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "數量必須大於零" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "数量不能大于输出数量" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "产出 {serial} 未通过所有必要测试" @@ -1022,11 +971,11 @@ msgstr "生产订单行项目" msgid "Build object" msgstr "生产对象" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "有序號的品項數量必須為1" msgid "Selected stock item does not match BOM line" msgstr "選擇的庫存品項和BOM的項目不符" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "庫存品項" @@ -1094,366 +1043,366 @@ msgstr "安裝到" msgid "Destination stock item" msgstr "目的庫存品項" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "生产等级" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "零件名称" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "项目编码标签" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "新建子生产项目" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "自动生成子生成工单" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "产出" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "产出与之前的生产不匹配" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "产出零件与生产订单零件不匹配" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "此产出已经完成" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "此产出尚未完全分配" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "输入产出数量" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "可追蹤的零件數量必須為整數" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "因為BOM包含可追蹤的零件,所以數量必須為整數" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "序號" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "输出产出的序列号" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "地點" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "生产输出的库存地点" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "自動分配序號" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "自動為需要項目分配對應的序號" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "序號已存在或無效" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "必须提供产出清单" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "废品产出的库存位置" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "放棄分配" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "取消对废品产出的任何库存分配" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "废品产出的原因" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "已完成删除的库存地点" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "狀態" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "接受不完整的分配" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "如果库存尚未全部分配,则完成产出" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "消费已分配的库存" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "消耗已分配给此生产的任何库存" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "移除未完成的产出" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "删除所有未完成的产出" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "不允许" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "接受作为此生产订单的消费" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "完成此生产订单前取消分配" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "超出分配的库存" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "如何处理分配给生产订单的额外库存项" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "有库存项目已被过度分配" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "接受未分配" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "接受库存项未被完全分配至生产订单" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "所需库存尚未完全分配" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "接受不完整" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "允许所需数量的产出未完成" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "未完成所需生产数量" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "生产订单有打开的子生产订单" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "生产订单必须处于生产状态" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "生产行" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "产出" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "生产产出必须指向相同的生产" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "生产行项目" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必须与生产订单零件相同" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "项目必须在库存中" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "可用量 ({q}) 超出限制" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "对于被追踪的零件的分配,必须指定生产产出" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "对于未被追踪的零件,无法指定生产产出" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "必须提供分配项目" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "零件来源的库存地点(留空则可来源于任何库存地点)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "排除位置" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "从该选定的库存地点排除库存项" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "可互換庫存" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "在多个位置的库存项目可以互换使用" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "替代品库存" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "允许分配可替换的零件" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "可选项目" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "分配可选的物料清单给生产订单" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "启动自动分配任务失败" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "物料清单参考" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "物料清单零件识别号码" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "物料清单零件名称" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "供应商零件" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "已分配数量" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "构建参考" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "零件类别名称" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "可追踪" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "已继承的" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "允许变体" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "物料清单项" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "分配库存" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "已订购" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "生产中" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "外部库存" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "可用库存" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "可用的替代品库存" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "可用的变体库存" @@ -1479,7 +1428,7 @@ msgstr "已取消" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "完成" @@ -1583,10 +1532,10 @@ msgstr "键字符串必须是唯一的" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "使用者" @@ -1594,7 +1543,7 @@ msgstr "使用者" msgid "Price break quantity" msgstr "批发价数量" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "价格" @@ -1619,7 +1568,7 @@ msgstr "此网络钩子的名称" msgid "Is this webhook active" msgstr "网络钩子是否已启用" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "令牌" @@ -1683,14 +1632,14 @@ msgstr "这条消息的工作完成了吗?" msgid "Id" msgstr "标识" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "标题" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "連結" @@ -1715,11 +1664,10 @@ msgstr "阅读" msgid "Was this news item read?" msgstr "这条新闻被阅读了吗?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "图像" @@ -1767,7 +1715,7 @@ msgstr "定义" msgid "Unit definition" msgstr "单位定义" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "附件" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "等同于商业逻辑中自定义状态的状态逻辑键" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "值" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "状态名" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "标签" @@ -1866,7 +1814,7 @@ msgstr "颜色" msgid "Color that will be displayed in the frontend" msgstr "将在前端显示颜色" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "型号" @@ -1906,7 +1854,7 @@ msgstr "逻辑密钥必须在参考状态的逻辑键中" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "已锁定" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "扫描条码" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "数据" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "扫描条形码的响应数据" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "结果" @@ -2165,1065 +2113,1081 @@ msgstr "用户无权为此模式创建或编辑附件" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "无分组" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "网站 URL 已配置为锁定" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "需要重启" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "设置已更改,需要服务器重启" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "等待迁移" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "待处理的数据库迁移数" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "服务器实例名称" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "服务器实例的字符串描述符" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "使用实例名称" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "在标题栏中使用实例名称" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "限制显示 `关于` 信息" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "只向超级管理员显示关于信息" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "公司名称" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "内部公司名称" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "基本 URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "服务器实例的基准 URL" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "默认货币单位" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "选择价格计算的默认货币" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "支持币种" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "支持的货币代码列表" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "货币更新间隔时间" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "检查更新的频率(设置为零以禁用)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "天" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "币种更新插件" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "使用货币更新插件" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "从URL下载" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "允许从外部 URL 下载远程图片和文件" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "下载大小限制" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "远程图片的最大允许下载大小" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "用于从 URL 下载的 User-agent" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "允许覆盖用于从外部 URL 下载图片和文件的 user-agent(留空为默认值)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "严格的 URL 验证" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "验证 URL 时需要 schema 规范" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "更新检查间隔" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "检查更新的频率(设置为零以禁用)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "自動備份" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "啟動資料庫和媒體文件自動備份" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "自動備份間隔" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "指定自动备份之间的间隔天数" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "任务删除间隔" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "后台任务结果将在指定天数后删除" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "错误日志删除间隔" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "错误日志将在指定天数后被删除" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "通知删除间隔" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "用户通知将在指定天数后被删除" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "条形码支持" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "在网页界面启用条形码扫描器支持" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "存储条码结果" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "存储条形码扫描结果" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "条码扫描最大计数" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "存储条码扫描结果的最大数量" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "条形码扫描延迟设置" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "条形码输入处理延迟时间" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "条码摄像头支持" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "允许通过网络摄像头扫描条形码" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "条形码显示数据" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "在浏览器中将条形码数据显示为文本" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "条形码生成插件" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "用于内部条形码数据生成的插件" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "零件修订" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "启用零件修订字段" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "仅限装配修订版本" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "仅允许对装配零件进行修订" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "允许从装配中删除" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "允许删除已在装配中使用的零件" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN 内部零件号" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "匹配零件 IPN(内部零件号)的正则表达式模式" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "允许重复的 IPN(内部零件号)" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "允许多个零件共享相同的 IPN(内部零件号)" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "允许编辑 IPN(内部零件号)" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "允许编辑零件时更改内部零件号" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "复制零件物料清单数据" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "复制零件时默认复制物料清单数据" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "复制零件参数数据" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "复制零件时默认复制参数数据" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "复制零件测试数据" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "复制零件时默认复制测试数据" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "复制类别参数模板" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "创建零件时复制类别参数模板" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "模板" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "零件默认为模板" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "默认情况下,元件可由其他零件组装而成" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "组件" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "默认情况下,零件可用作子部件" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "可购买" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "默认情况下可购买零件" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "可销售" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "零件默认为可销售" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "默认情况下可跟踪零件" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "虚拟的" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "默认情况下,零件是虚拟的" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "在视图中显示导入" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "在某些零件视图中显示导入向导" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "显示相关零件" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "显示零件的相关零件" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "初始库存数据" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "允许在添加新零件时创建初始库存" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "初始供应商数据" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "允许在添加新零件时创建初始供应商数据" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "零件名称显示格式" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "显示零件名称的格式" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "零件类别默认图标" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "零件类别默认图标 (空表示没有图标)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "强制参数单位" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "如果提供了单位,参数值必须与指定的单位匹配" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "最小定价小数位数" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "呈现定价数据时显示的最小小数位数" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "最大定价小数位数" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "呈现定价数据时显示的最大小数位数" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "使用供应商定价" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "将供应商的价批发价纳入总体定价计算中" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "购买历史记录覆盖" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "历史采购订单定价优先于供应商批发价" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "使用库存项定价" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "使用手动输入的库存数据进行定价计算" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "库存项目定价时间" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "从定价计算中排除超过此天数的库存项目" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "使用变体定价" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "在整体定价计算中包括变体定价" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "仅限活跃变体" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "仅使用活跃变体零件计算变体价格" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "价格重建间隔" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "零件价格自动更新前的天数" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "内部价格" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "启用内部零件价格" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "覆盖内部价格" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "如果有内部价格,内部价格将覆盖价格范围计算" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "启用标签打印功能" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "启用从网络界面打印标签" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "标签图片 DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "生成图像文件以供标签打印插件使用时的 DPI 分辨率" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "启用报告" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "启用报告生成" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "调试模式" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "以调试模式生成报告(HTML 输出)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "日志错误报告" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "记录生成报告时出现的错误" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "页面大小" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "PDF 报告默认页面大小" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "全局唯一序列号" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "库存项的序列号必须全局唯一" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "自动填充序列号" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "在表格中自动填充序列号" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "删除已耗尽的库存" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "设置库存耗尽时的默认行为" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "批号模板" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "为库存项生成默认批号的模板" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "库存过期" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "启用库存过期功能" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "销售过期库存" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "允许销售过期库存" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "库存过期时间" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "库存项在到期前被视为过期的天数" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "生产过期库存" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "允许用过期的库存生产" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "库存所有权控制" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "启用库存地点和项目的所有权控制" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "库存地点默认图标" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "库存地点默认图标 (空表示没有图标)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "显示已安装的库存项" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "在库存表中显示已安装的库存项" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "在安装项目时检查物料清单" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "已安装的库存项目必须存在于上级零件的物料清单中" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "允许超出库存转移" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "允许非库存的库存项目在库存位置之间转移" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "生产订单参考模式" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "生成生产订单参考字段所需的模式" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "要求负责人" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "必须为每个订单分配一个负责人" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "需要活动零件" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "防止为非活动零件创建生产订单" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "需要锁定零件" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "防止为未锁定的零件创建生产订单" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "需要有效的物料清单" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "除非物料清单已验证,否则禁止创建生产订单" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "需要关闭子订单" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "在所有子订单关闭之前,阻止生产订单的完成" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "阻止直到测试通过" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "在所有必要的测试通过之前,阻止产出完成" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "启用订单退货" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "在用户界面中启用订单退货功能" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "退货订单参考模式" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "生成退货订单参考字段所需的模式" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "编辑已完成的退货订单" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "允许编辑已完成的退货订单" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "销售订单参考模式" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "生成销售订单参考字段所需参照模式" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "销售订单默认配送方式" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "启用创建销售订单的默认配送功能" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "编辑已完成的销售订单" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "允许在订单配送或完成后编辑销售订单" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "标记该订单为已完成?" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "标记为已发货的销售订单将自动完成,绕过“已发货”状态" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "采购订单参考模式" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "生成采购订单参考字段所需的模式" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "编辑已完成的采购订单" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "允许在采购订单已配送或完成后编辑订单" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "自动完成采购订单" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "当收到所有行项目时,自动将采购订单标记为完成" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "忘记启用密码" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "在登录页面上启用忘记密码功能" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "启用注册" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "在登录页面为用户启用自行注册功能" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "启用单点登录" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "在登录界面启用单点登录" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "启用单点登录注册" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "允许登录页面上的用户通过 SSO 进行自我注册" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "启用单点登录群组同步" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "启用库存管理系统组和由身份提供者提供的组的同步功能" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "单点登录系统组密钥" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "由身份提供者提供的组声明属性名称" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "单点登录系统组地图" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "从单点登录系统组组到本地库存管理系统组的映射。如果本地组不存在,它将被创建。" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "移除单点登录系统以外的群组" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "如果分配给用户的组不是身份提供者的后端,是否应该删除它们。禁用此设置可能会造成安全问题" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "需要邮箱地址" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "要求用户在注册时提供邮件" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "自动填充单点登录系统用户" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "自动使用单点登录系统账户的数据填写用户详细信息" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "发两次邮件" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "注册时询问用户他们的电子邮件两次" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "两次输入密码" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "当注册时请用户输入密码两次" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "域名白名单" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "限制注册到某些域名 (逗号分隔,以 @ 开头)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "注册群组" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "注册时分配给新用户的组。 如果启用了单点登录系统群组同步,此群组仅在无法从 IdP 分配任何群组的情况下才被设置。" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "强制启用多因素安全认证" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "用户必须使用多因素安全认证。" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "启动时检查插件" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "启动时检查全部插件是否已安装 - 在容器环境中启用" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "检查插件更新" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "启用定期检查已安装插件的更新" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "启用统一资源定位符集成" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "启用插件以添加统一资源定位符路由" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "启用导航集成" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "启用插件以集成到导航中" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "启用应用集成" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "启用插件添加应用" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "启用调度集成" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "启用插件来运行预定任务" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "启用事件集成" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "启用插件响应内部事件" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "启用界面集成" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "启用插件集成到用户界面" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "盘点功能" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "启用盘点功能以记录库存水平和计算库存值" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "排除外部地点" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "从盘点计算中排除外部地点的库存项" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "自动盘点周期" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "自动盘点记录之间的天数 (设置为零以禁用)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "报告删除间隔" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "盘点报告将在指定天数后删除" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "显示用户全名" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "显示用户全名而不是用户名" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "启用测试站数据" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "启用测试站数据收集以获取测试结果" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "上传时创建模板" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "上传测试数据与现有模板不匹配时创建一个新的测试模板" @@ -3544,13 +3508,13 @@ msgstr "内部零件已激活" msgid "Supplier is Active" msgstr "供应商已激活" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "制造商" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "公司" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "链接地址信息 (外部)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "制造商零件" @@ -3744,8 +3708,8 @@ msgstr "选择零件" msgid "Select manufacturer" msgstr "选择制造商" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "制造商零件编号" @@ -3773,7 +3737,7 @@ msgstr "参数名称" msgid "Parameter value" msgstr "参数值" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "单位" @@ -3793,11 +3757,11 @@ msgstr "包装单位必须大于零" msgid "Linked manufacturer part must reference the same base part" msgstr "链接的制造商零件必须引用相同的基础零件" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "供应商" @@ -3805,7 +3769,7 @@ msgstr "供应商" msgid "Select supplier" msgstr "选择供应商" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "供应商库存管理单位" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "供应商零件说明" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "供应商零件说明" msgid "Note" msgstr "备注" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "基本费用" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低费用(例如库存费)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "打包" @@ -3861,7 +3825,7 @@ msgstr "包装数量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "单包供应的总数量。为单个项目留空。" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "多个" @@ -3885,15 +3849,15 @@ msgstr "上次更新可用性数据的日期" msgid "Supplier Price Break" msgstr "供应商批发价" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "此供应商使用的默认货币" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "公司名称" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "有库存" @@ -3905,7 +3869,7 @@ msgstr "自定义状态密钥" msgid "Additional status information for this item" msgstr "此项目的附加状态信息" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "键" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "导出格式无效" +#: importer/models.py:64 +msgid "Data File" +msgstr "数据文件" + #: importer/models.py:65 msgid "Data file to import" msgstr "要导入的数据文件" @@ -4009,7 +3977,7 @@ msgstr "原始行数据" msgid "Errors" msgstr "错误" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "有效" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "数量必须是正数" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "客户" @@ -4835,11 +4803,11 @@ msgstr "合并项目" msgid "Merge items with the same part, destination and target date into one line item" msgstr "将具有相同零件、目的地和目标日期的项目合并到一个行项目中" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "库存量单位" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "内部零件编号" @@ -4879,7 +4847,7 @@ msgstr "为收到的物品选择目的地位置" msgid "Enter batch code for incoming stock items" msgstr "输入入库项目的批号" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "有效期至" @@ -4979,7 +4947,7 @@ msgstr "以下序列号不可用" msgid "Return order line item" msgstr "退货订单行项目" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "库存项状态代码" @@ -5061,7 +5029,7 @@ msgstr "已加星标" msgid "Filter by starred categories" msgstr "按星标类别筛选" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "深度" @@ -5069,7 +5037,7 @@ msgstr "深度" msgid "Filter by category depth" msgstr "按类别深度筛选" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "顶级" @@ -5077,7 +5045,7 @@ msgstr "顶级" msgid "Filter by top-level categories" msgstr "按顶级类别筛选" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "级联" @@ -5105,1250 +5073,1190 @@ msgstr "排除指定类别下的子类别" msgid "Has Results" msgstr "有结果" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "收到的采购订单" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "外发销售订单" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "建造生产订单产生的库存" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "生产订单所需的库存" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "验证整个物料清单" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "必须选择此项" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "是修订版本" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "有修订版本" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "物料清单合规" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "装配部份是可测试的" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "组件部份是可测试的" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "使用" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "零件类别" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "零件类别" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "默认位置" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "此类别零件的默认库存地点" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "结构性" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "零件可能无法直接分配到结构类别,但可以分配到子类别。" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "默认关键字" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "此类别零件的默认关键字" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "图标" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "图标(可选)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "您不能使这个零件类别结构化,因为有些零件已经分配给了它!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "零件" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "无法删除这个零件,因为它已被锁定" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "无法删除这个零件,因为它仍然处于活动状态" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "无法删除这个零件,因为它被使用在了装配中" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "无效的上级零件选择" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清单 (递归)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清单 (递归)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "内部零件号必须匹配正则表达式 {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "零件不能是对自身的修订" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "无法对已经是修订版本的零件进行修订" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "必须指定修订代码" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "修订仅对装配零件允许" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "无法对模版零件进行修订" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "上级零件必须指向相同的模版" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "该序列号库存项己存在" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "在零件设置中不允许重复的内部零件号" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "重复的零件修订版本已经存在。" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "有这个名字,内部零件号,和修订版本的零件已经存在" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "零件不能分配到结构性零件类别!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "零件名称" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "是模板" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "这个零件是一个模版零件吗?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "这个零件是另一零件的变体吗?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "变体" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "零件描述(可选)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "关键词" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的零件关键字" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "零件类别" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "内部零件号 IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "零件修订版本或版本号" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "版本" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "这零件是另一零件的修订版本吗?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "修订版本" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "该物品通常存放在哪里?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "默认供应商" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "默认供应商零件" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "默认到期" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "此零件库存项的过期时间 (天)" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "最低库存" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "允许的最小库存量" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "此零件的计量单位" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "这个零件可由其他零件加工而成吗?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "这个零件可用于创建其他零件吗?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "此零件是否有唯一物品的追踪功能" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "这一部件能否记录到测试结果?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "这个零件可从外部供应商购买吗?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "此零件可以销售给客户吗?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "这个零件是否已激活?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "无法编辑锁定的零件" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "这是一个虚拟零件,例如一个软件产品或许可证吗?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "物料清单校验和" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "保存的物料清单校验和" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "物料清单检查人" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "物料清单检查日期" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "此零件的负责人" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "最近库存盘点" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "出售多个" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "用于缓存定价计算的货币" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "最低物料清单成本" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "元件的最低成本" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "物料清单的最高成本" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "元件的最高成本" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "最低购买成本" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "最高历史购买成本" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "最大购买成本" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "最高历史购买成本" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "最低内部价格" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "基于内部批发价的最低成本" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "最大内部价格" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "基于内部批发价的最高成本" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "供应商最低价格" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "外部供应商零件的最低价格" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "供应商最高价格" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "来自外部供应商的商零件的最高价格" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "最小变体成本" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "计算出的变体零件的最低成本" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "最大变体成本" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "计算出的变体零件的最大成本" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "最低成本" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "覆盖最低成本" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "最高成本" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "覆盖最大成本" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "计算总最低成本" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "计算总最大成本" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "最低售出价格" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "基于批发价的最低售出价格" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "最高售出价格" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "基于批发价的最大售出价格" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "最低销售成本" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "历史最低售出价格" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "最高销售成本" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "历史最高售出价格" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "用于盘点的零件" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "物品数量" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "盘点时的个别库存条目数" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "盘点时可用库存总额" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日期" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "进行盘点的日期" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "附加注释" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "进行此盘点的用户" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "最低库存成本" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "现有存库存最低成本估算" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "最高库存成本" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "目前库存最高成本估算" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "报告" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "盘点报告文件(内部生成)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "零件计数" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "盘点涵盖的零件数量" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "请求此盘点报告的用户" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "零件售出价格折扣" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "零件测试模板" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "模板名称无效 - 必须包含至少一个字母或者数字" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "选择必须是唯一的" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "测试模板只能为可拆分的部件创建" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "零件已存在具有相同主键的测试模板" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "测试名" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "输入测试的名称" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "测试主键" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "简化测试主键" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "测试说明" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "输入测试的描述" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "已启用" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "此测试是否已启用?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "必须的" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "需要此测试才能通过吗?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "需要值" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "添加测试结果时是否需要一个值?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "需要附件" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "添加测试结果时是否需要文件附件?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "选项" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "此测试的有效选择 (逗号分隔)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "零件参数模板" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "勾选框参数不能有单位" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "复选框参数不能有选项" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "参数模板名称必须是唯一的" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "参数名称" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "此参数的物理单位" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "参数说明" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "勾选框" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "此参数是否为勾选框?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "此参数的有效选择 (逗号分隔)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "零件参数" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "参数不能被修改 - 零件被锁定" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "无效的参数值选择" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "父零件" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "参数值" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "零件类别参数模板" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "默认值" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "默认参数值" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "零件ID或零件名称" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "零件编号" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "唯一零件ID值" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "零件的内部零件号" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "零件内部零件号" - -#: part/models.py:4130 -msgid "Level" -msgstr "级" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "物料清单级别" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "物料清单项目不能被修改 - 装配已锁定" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "物料清单项目不能修改 - 变体装配已锁定" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "选择父零件" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "子零件" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "选择要用于物料清单的零件" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "此物料清单项目的数量" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "此物料清单项目是可选的" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "这个物料清单项目是耗材 (它没有在生产订单中被追踪)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "超量" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "估计生产物浪费量(绝对值或百分比)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "物料清单项目引用" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "物料清单项目注释" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "校验和" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "物料清单行校验和" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "已验证" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "此物料清单项目已验证" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "获取继承的" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "此物料清单项目是由物料清单继承的变体零件" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "变体零件的库存项可以用于此物料清单项目" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "可追踪零件的数量必须是整数" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "必须指定子零件" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "物料清单项目替代品" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "替代品零件不能与主零件相同" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "上级物料清单项目" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "替代品零件" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "零件 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "零件2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "选择相关的零件" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "此关系的注释" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "零件关系不能在零件和自身之间创建" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "复制关系已经存在" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "上级类别" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "上级零件类别" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "子类别" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "结果" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "根据该模板记录的结果数量" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "购买此库存项的货币" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "投机数量" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "型号ID" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "使用此模板的零件数" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "没有选定零件" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "选择类别" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "原始零件" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "选择要复制的原始零件" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "复制图片" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "从原零件复制图片" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "复制物料清单" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "从原始零件复制材料清单" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "复制参数" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "从原始零件复制参数数据" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "复制备注" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "从原始零件复制备注" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "初始化库存数量" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "指定此零件的初始库存数量。如果数量为零,则不添加任何库存。" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "初始化库存地点" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "初始化指定此零件的库存地点" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "选择供应商(或为空以跳过)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "选择制造商(或为空)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "制造商零件号" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "所选公司不是一个有效的供应商" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "所选公司不是一个有效的制造商" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "与此制造商零件编号 (MPN) 的相匹配的制造商零件已存在" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "匹配此库存单位 (SKU) 的供应商零件已存在" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "类别名称" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "正在生产" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "库存项" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "修订" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "供应商" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "库存总量" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "未分配的库存" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "变体库存" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "重复零件" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "从另一个零件复制初始数据" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "初始库存" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "创建具有初始库存数量的零件" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "供应商信息" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "添加此零件的初始供应商信息" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "复制类别参数" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "从选择的零件复制参数模版" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "现有的图片" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "现有零件图片的文件名" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "图片不存在" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "限制盘点报告到某个特定零件以及任何变体零件" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "限制盘点报告到某个特定零件类别以及任何子类别" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "限制盘点报告到某个特定零件库存地点以及任何子位置" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "排除外部库存" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "排除外部位置的库存项" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "生成报告" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "生成包含计算出来的盘点数据的报告文件" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "更新零件" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "使用计算出的盘点数据更新指定零件" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "盘点功能未启用" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "后台执行器检查失败" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "最低价格" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "覆盖已计算的最低价格值" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "最低价格货币" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "最高价格" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "覆盖已计算的最高价格值" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "最高价格货币" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "更新" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "更新这个零件的价格" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "无法将所提供的货币转换为 {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "最低价格不能高于最高价格。" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "最高价格不能低于最低价格" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "选择父装配" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "选择零部件" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "可以创建" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "选择要复制物料清单的零件" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "移除现有数据" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "复制前删除现有的物料清单项目" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "包含继承的" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "包含从模板零件继承的物料清单项目" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "跳过无效行" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "启用此选项以跳过无效行" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "复制替代品零件" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "复制物料清单项目时复制替代品零件" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "清除现有的物料清单" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "上传前删除现有的物料清单项目" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "未指定零件列" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "找到多个匹配的零件。" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "没有找到匹配的零件" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "零件未指定为元件" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "未提供数量" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "无效的数量" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "至少需要一个物料清单项目" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "零件编号" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "未找到匹配条形码数据" msgid "Match found for barcode data" msgstr "找到匹配条形码数据" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "不支持模型" @@ -6504,75 +6412,75 @@ msgstr "已收到采购订单行项目" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "已扫描的条形码数据" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "要生成条形码的模型名称" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "要生成条形码的模型对象的主键" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "根据采购订单以分配项目" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "采购订单未处理" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "根据采购订单以接收项目" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "采购订单尚未提交" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "项目接收地点" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "无法选择一个结构性位置" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "根据销售订单以分配项目" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "销售订单未挂起" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "根据销售订单行项目分配项目" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "根据销售订单配送分配项目" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "已交付" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "待分配数" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "提供条形码本地支持" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "短条形码前缀" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "自定义用于短条形码的前缀,可能对有多个InvenTree实例的环境有用。" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Inventree 通知" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "集成的输出通知方法" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "启用电子邮件通知" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "允许发送事件通知邮件" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "启用slack通知" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "允许发送事件通知的 slack 频道消息" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack传入Webhook url" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "用于发送消息到slack频道的 URL" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "打开链接" @@ -6936,7 +6844,7 @@ msgstr "内置插件" msgid "Package Plugin" msgstr "软件包插件" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "插件" @@ -7155,7 +7063,7 @@ msgstr "删除配置" msgid "Delete the plugin configuration from the database" msgstr "从数据库中删除插件配置" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "项目" @@ -7281,67 +7189,67 @@ msgstr "高度 [mm]" msgid "Label height, specified in mm" msgstr "标签高度,以毫米为单位。" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "要处理的项目数量" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "报告生成完成" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "进度" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "报告生成进度" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "报告模板" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "输出文件" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "生成输出文件" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "标签输出插件" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "标签模板" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "代码片段" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "报告代码片段文件" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "代码片段文件描述" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "资产" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "报告资产文件" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "资产文件描述" @@ -7493,123 +7401,123 @@ msgstr "parpart_image 标签需要一个零件实例" msgid "company_image tag requires a Company instance" msgstr "公司_图片标签需要一个公司实例" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "按位置深度筛选" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "按顶级位置筛选" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "在筛选结果中包含子地点" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "上级地点" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "按上级位置筛选" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "零件名称 (不区分大小写)" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "零件名称包含 (不区分大小写)" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "零件名称 (正则表达式)" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "内部零件号 (不区分大小写)" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "内部零件号 (不区分大小写)" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "内部零件号 (正则表达式)" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "最低库存" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "最大库存" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "状态代码" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "外部地点" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "零件树" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "过期日期前" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "过期日期后" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "过期" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "请先输入数量" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "必须提供有效的零件" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "给定的供应商零件不存在" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "供应商零件有定义的包装大小,但 use_pack_size 标志未设置" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "不能为不可跟踪的零件提供序列号" @@ -7629,7 +7537,7 @@ msgstr "为所有没有图标的位置设置默认图标(可选)" msgid "Stock Location" msgstr "库存地点" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "库存地点" @@ -7718,7 +7626,7 @@ msgstr "为此库存项目选择匹配的供应商零件" msgid "Where is this stock item located?" msgstr "这个库存物品在哪里?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "包装此库存物品存储在" @@ -7734,7 +7642,7 @@ msgstr "此项目是否安装在另一个项目中?" msgid "Serial number for this item" msgstr "此项目的序列号" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "此库存项的批号" @@ -7790,136 +7698,136 @@ msgstr "购买时一个单位的价格" msgid "Converted to part" msgstr "转换为零件" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "零件未设置为可跟踪" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "数量必须是整数" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "数量不得超过现有库存量 ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "必须以列表形式提供序列号" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "数量不匹配序列号" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "测试模板不存在" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "库存项已分配到销售订单" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "库存项已安装在另一个项目中" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "库存项包含其他项目" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "库存项已分配给客户" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "库存项目前正在生产" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "序列化的库存不能合并" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "复制库存项" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "库存项必须指相同零件" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "库存项必须是同一供应商的零件" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "库存状态码必须匹配" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "库存项不能移动,因为它没有库存" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "库存项跟踪" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "条目注释" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "库存项测试结果" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "必须为此测试提供值" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "测试附件必须上传" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "此测试的值无效" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "测试结果" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "测试输出值" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "测验结果附件" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "测试备注" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "测试站" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "进行测试的测试站的标识符" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "已开始" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "测试开始的时间戳" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "已完成" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "测试结束的时间戳" @@ -7995,7 +7903,7 @@ msgstr "添加时使用包装尺寸:定义的数量是包装的数量" msgid "Supplier Part Number" msgstr "供应商零件编号" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "已过期" @@ -8024,7 +7932,7 @@ msgstr "数量不得超过现有库存量 ({q})" msgid "Enter serial numbers for new items" msgstr "输入新项目的序列号" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "目标库存位置" @@ -8101,79 +8009,79 @@ msgstr "选择要更改状态的库存项目" msgid "No stock items selected" msgstr "未选择库存商品" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "子位置" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "上级库存地点" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "零件必须可销售" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "物料已分配到销售订单" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "项目被分配到生产订单中" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "客户分配库存项目" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "所选公司不是客户" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "库存分配说明" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "必须提供库存物品清单" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "库存合并说明" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "允许不匹配的供应商" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "允许合并具有不同供应商零件的库存项目" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "允许不匹配的状态" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "允许合并具有不同状态代码的库存项目" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "必须提供至少两件库存物品" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "无更改" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "库存项主键值" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "库存交易记录" @@ -8305,11 +8213,11 @@ msgstr "寄送給客戶" msgid "Returned from customer" msgstr "從客戶端退回" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "权限受限" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "您没有查看此页面的权限。" @@ -8317,47 +8225,39 @@ msgstr "您没有查看此页面的权限。" msgid "Authentication Failure" msgstr "认证失败" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "您已从InvenTree注销。" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "登录" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "找不到页面" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "请求的页面不存在" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "服务器内部错误" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "%(inventree_title)s 服务器引起一个内部错误" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "有关更多详细信息,请参阅管理界面中的错误日志" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "网站正在维护中" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "该网站目前正在维护中,应该很快就会重新上线!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree 徽标" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "需要重新启动服务器" @@ -8423,31 +8323,31 @@ msgstr "点击以下链接查看此零件" msgid "Minimum Quantity" msgstr "最小数量" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "用户" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "选择分配给此组的用户" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "以下用户是多个组的成员" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "个人信息" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "权限" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "重要日期" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "令牌已被撤销" @@ -8455,55 +8355,55 @@ msgstr "令牌已被撤销" msgid "Token has expired" msgstr "令牌已过期" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API 令牌" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API 令牌" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "令牌名称" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "自定义令牌名称" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "令牌过期日期" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "最近一次在线" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "最近使用令牌的时间" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "撤销" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "管理员" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "库存盘点" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "采购订单" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "销售订单" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "退货订单" diff --git a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po index 3b39494782..ff11052beb 100644 --- a/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh_Hant/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2025-02-14 08:16+0000\n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"POT-Creation-Date: 2025-02-23 10:08+0000\n" +"PO-Revision-Date: 2025-02-23 10:11\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Language: zh_TW\n" @@ -17,58 +17,50 @@ msgstr "" "X-Crowdin-File: /src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 250\n" -#: InvenTree/api.py:322 +#: InvenTree/AllUserRequire2FAMiddleware.py:42 +msgid "You must enable two-factor authentication before doing anything else." +msgstr "" + +#: InvenTree/api.py:340 msgid "API endpoint not found" msgstr "未找到 API 端點" -#: InvenTree/api.py:444 +#: InvenTree/api.py:462 msgid "Invalid items list provided" msgstr "提供了無效的單位" -#: InvenTree/api.py:453 +#: InvenTree/api.py:471 msgid "Invalid filters provided" msgstr "提供了無效的過濾器" -#: InvenTree/api.py:458 +#: InvenTree/api.py:476 msgid "No items found to delete" msgstr "未找到要刪除的項目" -#: InvenTree/api.py:573 +#: InvenTree/api.py:609 msgid "User does not have permission to view this model" msgstr "用户沒有權限查閲當前模型。" -#: InvenTree/auth_override_views.py:24 -msgid "Verification e-mail sent." -msgstr "" - -#: InvenTree/auth_overrides.py:63 +#: InvenTree/auth_overrides.py:57 msgid "Email (again)" msgstr "電子郵件 (重複)" -#: InvenTree/auth_overrides.py:67 +#: InvenTree/auth_overrides.py:61 msgid "Email address confirmation" msgstr "郵箱地址已確認" -#: InvenTree/auth_overrides.py:90 +#: InvenTree/auth_overrides.py:84 msgid "You must type the same email each time." msgstr "您必須每次輸入相同的電子郵件。" -#: InvenTree/auth_overrides.py:101 -msgid "MFA Registration is disabled." -msgstr "MFA註冊已禁用。" - -#: InvenTree/auth_overrides.py:142 InvenTree/auth_overrides.py:150 +#: InvenTree/auth_overrides.py:126 InvenTree/auth_overrides.py:134 msgid "The provided primary email address is not valid." msgstr "提供的主電子郵件地址無效。" -#: InvenTree/auth_overrides.py:156 +#: InvenTree/auth_overrides.py:140 msgid "The provided email domain is not approved." msgstr "提供的郵箱域名未被批准。" -#: InvenTree/auth_overrides.py:278 -msgid "Registration is disabled." -msgstr "註冊已禁用。" - #: InvenTree/conversion.py:162 #, python-brace-format msgid "Invalid unit provided ({unit})" @@ -84,7 +76,7 @@ msgid "Could not convert {original} to {unit}" msgstr "不能將 {original} 轉換到 {unit}" #: InvenTree/conversion.py:208 InvenTree/conversion.py:222 -#: InvenTree/helpers.py:513 order/models.py:647 order/models.py:913 +#: InvenTree/helpers.py:496 order/models.py:647 order/models.py:913 msgid "Invalid quantity provided" msgstr "提供的數量無效" @@ -100,14 +92,14 @@ msgstr "輸入日期" msgid "Invalid decimal value" msgstr "" -#: InvenTree/fields.py:208 InvenTree/models.py:942 build/serializers.py:517 -#: build/serializers.py:592 company/models.py:829 order/models.py:1538 -#: part/models.py:3302 +#: InvenTree/fields.py:208 InvenTree/models.py:887 build/serializers.py:514 +#: build/serializers.py:589 company/models.py:829 order/models.py:1538 +#: part/models.py:3307 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/models.py:2636 stock/models.py:2760 stock/serializers.py:727 +#: stock/models.py:2625 stock/models.py:2749 stock/serializers.py:727 #: stock/serializers.py:889 stock/serializers.py:994 stock/serializers.py:1048 -#: stock/serializers.py:1362 stock/serializers.py:1451 -#: stock/serializers.py:1629 +#: stock/serializers.py:1359 stock/serializers.py:1448 +#: stock/serializers.py:1626 msgid "Notes" msgstr "備註" @@ -120,42 +112,42 @@ msgstr "值' {name}' 未出現在模式格式中" msgid "Provided value does not match required pattern: " msgstr "提供的值與所需模式不匹配:" -#: InvenTree/helpers.py:517 +#: InvenTree/helpers.py:500 msgid "Cannot serialize more than 1000 items at once" msgstr "" -#: InvenTree/helpers.py:523 +#: InvenTree/helpers.py:506 msgid "Empty serial number string" msgstr "序號為空白" -#: InvenTree/helpers.py:552 +#: InvenTree/helpers.py:535 msgid "Duplicate serial" msgstr "複製序列號" -#: InvenTree/helpers.py:584 InvenTree/helpers.py:627 InvenTree/helpers.py:645 -#: InvenTree/helpers.py:652 InvenTree/helpers.py:671 +#: InvenTree/helpers.py:567 InvenTree/helpers.py:610 InvenTree/helpers.py:628 +#: InvenTree/helpers.py:635 InvenTree/helpers.py:654 #, python-brace-format msgid "Invalid group: {group}" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Group range {group} exceeds allowed quantity ({expected_quantity})" msgstr "組範圍 {group} 超出了允許的數量 ({expected_quantity})" -#: InvenTree/helpers.py:681 +#: InvenTree/helpers.py:664 msgid "No serial numbers found" msgstr "未找到序列號" -#: InvenTree/helpers.py:686 +#: InvenTree/helpers.py:669 msgid "Number of unique serial numbers ({len(serials)}) must match quantity ({expected_quantity})" msgstr "唯一序列號的數量 ({len(serials)}) 必須與數量匹配 ({expected_quantity})" -#: InvenTree/helpers.py:805 +#: InvenTree/helpers.py:788 msgid "Remove HTML tags from this value" msgstr "從這個值中刪除 HTML 標籤" -#: InvenTree/helpers.py:884 +#: InvenTree/helpers.py:867 msgid "Data contains prohibited markdown content" msgstr "" @@ -343,11 +335,11 @@ msgstr "中文 (簡體)" msgid "Chinese (Traditional)" msgstr "中文 (繁體)" -#: InvenTree/magic_login.py:28 +#: InvenTree/magic_login.py:31 msgid "Log in to the app" msgstr "" -#: InvenTree/magic_login.py:38 InvenTree/serializers.py:416 +#: InvenTree/magic_login.py:41 InvenTree/serializers.py:425 #: company/models.py:133 msgid "Email" msgstr "電子郵件" @@ -368,247 +360,205 @@ msgstr "外掛程式Metadata" msgid "JSON metadata field, for use by external plugins" msgstr "外掛程式使用的JSON Metadata欄位" -#: InvenTree/models.py:429 +#: InvenTree/models.py:374 msgid "Improperly formatted pattern" msgstr "格式錯誤" -#: InvenTree/models.py:436 +#: InvenTree/models.py:381 msgid "Unknown format key specified" msgstr "指定了不明的格式鍵值" -#: InvenTree/models.py:442 +#: InvenTree/models.py:387 msgid "Missing required format key" msgstr "缺少必須的格式鍵值" -#: InvenTree/models.py:453 +#: InvenTree/models.py:398 msgid "Reference field cannot be empty" msgstr "參考欄位不能空白" -#: InvenTree/models.py:461 +#: InvenTree/models.py:406 msgid "Reference must match required pattern" msgstr "參考欄位並須符合格式" -#: InvenTree/models.py:492 +#: InvenTree/models.py:437 msgid "Reference number is too large" msgstr "參考編號過大" -#: InvenTree/models.py:743 +#: InvenTree/models.py:688 msgid "Duplicate names cannot exist under the same parent" msgstr "同一個上層元件下不能有重複的名字" -#: InvenTree/models.py:760 +#: InvenTree/models.py:705 msgid "Invalid choice" msgstr "無效的選項" -#: InvenTree/models.py:789 common/models.py:1310 common/models.py:1737 +#: InvenTree/models.py:734 common/models.py:1310 common/models.py:1737 #: common/models.py:1989 common/models.py:2114 common/serializers.py:484 #: company/models.py:588 generic/states/serializers.py:20 machine/models.py:24 -#: part/models.py:998 part/models.py:3773 plugin/models.py:52 +#: part/models.py:997 part/models.py:3778 plugin/models.py:52 #: report/models.py:165 stock/models.py:83 msgid "Name" msgstr "名稱" -#: InvenTree/models.py:795 build/models.py:257 common/models.py:108 +#: InvenTree/models.py:740 build/models.py:257 common/models.py:108 #: common/models.py:2121 common/models.py:2234 company/models.py:516 #: company/models.py:820 order/models.py:343 order/models.py:1571 -#: part/models.py:1021 part/models.py:3788 report/models.py:171 -#: report/models.py:714 report/models.py:740 +#: part/models.py:1020 part/models.py:3793 report/models.py:171 +#: report/models.py:712 report/models.py:738 #: report/templates/report/inventree_build_order_report.html:117 #: stock/models.py:89 msgid "Description" msgstr "描述" -#: InvenTree/models.py:796 stock/models.py:90 +#: InvenTree/models.py:741 stock/models.py:90 msgid "Description (optional)" msgstr "描述(選填)" -#: InvenTree/models.py:811 common/models.py:2287 +#: InvenTree/models.py:756 common/models.py:2287 msgid "Path" msgstr "路徑" -#: InvenTree/models.py:942 +#: InvenTree/models.py:887 msgid "Markdown notes (optional)" msgstr "Markdown 註記(選填)" -#: InvenTree/models.py:973 +#: InvenTree/models.py:918 msgid "Barcode Data" msgstr "條碼資料" -#: InvenTree/models.py:974 +#: InvenTree/models.py:919 msgid "Third party barcode data" msgstr "第三方條碼資料" -#: InvenTree/models.py:980 +#: InvenTree/models.py:925 msgid "Barcode Hash" msgstr "條碼雜湊值" -#: InvenTree/models.py:981 +#: InvenTree/models.py:926 msgid "Unique hash of barcode data" msgstr "條碼資料的唯一雜湊值" -#: InvenTree/models.py:1048 +#: InvenTree/models.py:993 msgid "Existing barcode found" msgstr "發現現有條碼" -#: InvenTree/models.py:1129 +#: InvenTree/models.py:1074 msgid "Task Failure" msgstr "" -#: InvenTree/models.py:1130 +#: InvenTree/models.py:1075 #, python-brace-format msgid "Background worker task '{f}' failed after {n} attempts" msgstr "" -#: InvenTree/models.py:1157 +#: InvenTree/models.py:1102 msgid "Server Error" msgstr "伺服器錯誤" -#: InvenTree/models.py:1158 +#: InvenTree/models.py:1103 msgid "An error has been logged by the server." msgstr "伺服器紀錄了一個錯誤。" -#: InvenTree/serializers.py:63 part/models.py:4412 +#: InvenTree/serializers.py:68 part/models.py:4396 msgid "Must be a valid number" msgstr "必須是有效的數字" -#: InvenTree/serializers.py:100 company/models.py:183 part/models.py:3120 +#: InvenTree/serializers.py:109 company/models.py:183 part/models.py:3125 msgid "Currency" msgstr "貨幣" -#: InvenTree/serializers.py:103 +#: InvenTree/serializers.py:112 msgid "Select currency from available options" msgstr "從可用選項中選擇貨幣" -#: InvenTree/serializers.py:405 +#: InvenTree/serializers.py:414 msgid "Username" msgstr "用户名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First Name" msgstr "名" -#: InvenTree/serializers.py:408 +#: InvenTree/serializers.py:417 msgid "First name of the user" msgstr "用户的名字(不包括姓氏)" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last Name" msgstr "姓" -#: InvenTree/serializers.py:412 +#: InvenTree/serializers.py:421 msgid "Last name of the user" msgstr "用户的姓氏" -#: InvenTree/serializers.py:416 +#: InvenTree/serializers.py:425 msgid "Email address of the user" msgstr "用户的電子郵件地址" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Staff" msgstr "職員" -#: InvenTree/serializers.py:441 +#: InvenTree/serializers.py:450 msgid "Does this user have staff permissions" msgstr "此用户是否擁有員工權限" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Superuser" msgstr "超級用户" -#: InvenTree/serializers.py:445 +#: InvenTree/serializers.py:454 msgid "Is this user a superuser" msgstr "此用户是否為超級用户" -#: InvenTree/serializers.py:449 common/models.py:1315 common/models.py:2134 +#: InvenTree/serializers.py:458 common/models.py:1315 common/models.py:2134 #: common/models.py:2241 company/models.py:160 company/models.py:794 -#: machine/models.py:39 part/models.py:1204 plugin/models.py:67 -#: stock/api.py:595 users/models.py:182 +#: machine/models.py:39 part/models.py:1203 plugin/models.py:67 +#: stock/api.py:588 users/models.py:180 msgid "Active" msgstr "激活" -#: InvenTree/serializers.py:449 +#: InvenTree/serializers.py:458 msgid "Is this user account active" msgstr "此用户帳户是否已激活" -#: InvenTree/serializers.py:467 +#: InvenTree/serializers.py:476 msgid "You do not have permission to change this user role." msgstr "您沒有更改這個使用者角色的權限" -#: InvenTree/serializers.py:503 +#: InvenTree/serializers.py:512 msgid "Only superusers can create new users" msgstr "只有管理員帳户可以建立新的使用者" -#: InvenTree/serializers.py:523 +#: InvenTree/serializers.py:532 msgid "Your account has been created." msgstr "您的帳號已經建立完成。" -#: InvenTree/serializers.py:525 +#: InvenTree/serializers.py:534 msgid "Please use the password reset function to login" msgstr "請使用重設密碼功能來登入" -#: InvenTree/serializers.py:531 +#: InvenTree/serializers.py:540 msgid "Welcome to InvenTree" msgstr "歡迎使用 InvenTree" -#: InvenTree/serializers.py:594 +#: InvenTree/serializers.py:603 msgid "Invalid value" msgstr "無效值" -#: InvenTree/serializers.py:614 importer/models.py:64 -msgid "Data File" -msgstr "數據文件" - -#: InvenTree/serializers.py:615 -msgid "Select data file for upload" -msgstr "選擇要上傳的數據文件" - -#: InvenTree/serializers.py:632 -msgid "Unsupported file format" -msgstr "" - -#: InvenTree/serializers.py:638 -msgid "File is too large" -msgstr "文件過大" - -#: InvenTree/serializers.py:659 -msgid "No columns found in file" -msgstr "在文件中沒有找到列" - -#: InvenTree/serializers.py:662 -msgid "No data rows found in file" -msgstr "在文件中沒有找到數據行" - -#: InvenTree/serializers.py:774 -msgid "No data rows provided" -msgstr "沒有提供數據行" - -#: InvenTree/serializers.py:777 -msgid "No data columns supplied" -msgstr "沒有提供數據列" - -#: InvenTree/serializers.py:843 -#, python-brace-format -msgid "Missing required column: '{name}'" -msgstr "缺少必需的列:'{name}'" - -#: InvenTree/serializers.py:852 -#, python-brace-format -msgid "Duplicate column: '{col}'" -msgstr "重複列: '{col}'" - -#: InvenTree/serializers.py:891 +#: InvenTree/serializers.py:637 msgid "Remote Image" msgstr "遠程圖片" -#: InvenTree/serializers.py:892 +#: InvenTree/serializers.py:638 msgid "URL of remote image file" msgstr "遠程圖片文件的 URL" -#: InvenTree/serializers.py:910 +#: InvenTree/serializers.py:656 msgid "Downloading images from remote URL is not enabled" msgstr "未啓用從遠程 URL下載圖片" -#: InvenTree/serializers.py:917 +#: InvenTree/serializers.py:663 msgid "Failed to download image from remote URL" msgstr "從遠程URL下載圖像失敗" @@ -641,20 +591,19 @@ msgid "Parent Build" msgstr "上層生產工單" #: build/api.py:67 build/api.py:733 order/api.py:484 order/api.py:701 -#: order/api.py:1089 order/api.py:1316 stock/api.py:526 +#: order/api.py:1089 order/api.py:1316 stock/api.py:519 msgid "Include Variants" msgstr "包含變體" #: build/api.py:83 build/api.py:435 build/api.py:747 build/models.py:275 -#: build/serializers.py:1246 build/serializers.py:1356 -#: build/serializers.py:1407 company/models.py:1039 company/serializers.py:417 +#: build/serializers.py:1243 build/serializers.py:1353 +#: build/serializers.py:1404 company/models.py:1039 company/serializers.py:413 #: order/api.py:250 order/api.py:863 order/api.py:1102 order/models.py:1660 -#: order/models.py:1819 order/models.py:1820 part/api.py:1447 part/api.py:1515 -#: part/api.py:1822 part/models.py:417 part/models.py:3131 part/models.py:3275 -#: part/models.py:3423 part/models.py:3444 part/models.py:3466 -#: part/models.py:3602 part/models.py:3963 part/models.py:4126 -#: part/models.py:4256 part/models.py:4622 part/serializers.py:1257 -#: part/serializers.py:1890 +#: order/models.py:1819 order/models.py:1820 part/api.py:1450 part/api.py:1518 +#: part/api.py:1825 part/models.py:416 part/models.py:3136 part/models.py:3280 +#: part/models.py:3428 part/models.py:3449 part/models.py:3471 +#: part/models.py:3607 part/models.py:3968 part/models.py:4240 +#: part/models.py:4606 part/serializers.py:1254 part/serializers.py:1887 #: report/templates/report/inventree_bill_of_materials_report.html:110 #: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_report.html:109 @@ -663,7 +612,7 @@ msgstr "包含變體" #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_sales_order_shipment_report.html:28 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/api.py:539 stock/serializers.py:112 stock/serializers.py:160 +#: stock/api.py:532 stock/serializers.py:112 stock/serializers.py:160 #: stock/serializers.py:464 stock/serializers.py:618 stock/serializers.py:919 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 @@ -672,9 +621,9 @@ msgstr "包含變體" msgid "Part" msgstr "零件" -#: build/api.py:103 part/api.py:1529 part/models.py:1039 part/models.py:3494 -#: part/models.py:4072 part/serializers.py:483 part/serializers.py:1267 -#: stock/api.py:822 +#: build/api.py:103 part/api.py:1532 part/models.py:1038 part/models.py:3499 +#: part/models.py:4077 part/serializers.py:480 part/serializers.py:1264 +#: stock/api.py:815 msgid "Category" msgstr "類別" @@ -739,16 +688,16 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "工單必須被取消才能被刪除" -#: build/api.py:418 build/serializers.py:1372 part/models.py:4290 +#: build/api.py:418 build/serializers.py:1369 part/models.py:4274 msgid "Consumable" msgstr "耗材" -#: build/api.py:421 build/serializers.py:1375 part/models.py:4284 +#: build/api.py:421 build/serializers.py:1372 part/models.py:4268 msgid "Optional" msgstr "非必須項目" -#: build/api.py:424 common/setting/system.py:409 part/models.py:1169 -#: part/serializers.py:1645 part/serializers.py:1652 stock/api.py:592 +#: build/api.py:424 common/setting/system.py:429 part/models.py:1168 +#: part/serializers.py:1642 part/serializers.py:1649 stock/api.py:585 msgid "Assembly" msgstr "裝配" @@ -756,7 +705,7 @@ msgstr "裝配" msgid "Tracked" msgstr "追蹤中" -#: build/api.py:430 build/serializers.py:1378 part/models.py:1187 +#: build/api.py:430 build/serializers.py:1375 part/models.py:1186 msgid "Testable" msgstr "可測試" @@ -768,7 +717,7 @@ msgstr "" msgid "Allocated" msgstr "已分配" -#: build/api.py:460 company/models.py:884 company/serializers.py:412 +#: build/api.py:460 company/models.py:884 company/serializers.py:408 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 msgid "Available" @@ -781,7 +730,7 @@ msgstr "可用數量" msgid "Build Order" msgstr "生產工單" -#: build/models.py:94 users/models.py:207 +#: build/models.py:94 users/models.py:205 msgid "Build Orders" msgstr "生產工單" @@ -817,9 +766,9 @@ msgstr "" msgid "Build Order Reference" msgstr "生產工單代號" -#: build/models.py:251 build/serializers.py:1369 order/models.py:534 +#: build/models.py:251 build/serializers.py:1366 order/models.py:534 #: order/models.py:1106 order/models.py:1531 order/models.py:2321 -#: part/models.py:4305 +#: part/models.py:4289 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -847,7 +796,7 @@ msgstr "銷售訂單代號" msgid "SalesOrder to which this build is allocated" msgstr "這張生產工單對應的銷售訂單" -#: build/models.py:294 build/serializers.py:1099 +#: build/models.py:294 build/serializers.py:1096 msgid "Source Location" msgstr "來源倉儲地點" @@ -887,17 +836,17 @@ msgstr "生產狀態" msgid "Build status code" msgstr "生產狀態代碼" -#: build/models.py:342 build/serializers.py:367 order/serializers.py:763 -#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1594 +#: build/models.py:342 build/serializers.py:364 order/serializers.py:763 +#: stock/models.py:941 stock/serializers.py:77 stock/serializers.py:1591 msgid "Batch Code" msgstr "批號" -#: build/models.py:346 build/serializers.py:368 +#: build/models.py:346 build/serializers.py:365 msgid "Batch code for this build output" msgstr "此產出的批號" #: build/models.py:350 order/models.py:377 order/serializers.py:159 -#: part/models.py:1244 +#: part/models.py:1243 msgid "Creation Date" msgstr "建立日期" @@ -934,7 +883,7 @@ msgid "User who issued this build order" msgstr "發布此生產工單的使用者" #: build/models.py:397 common/models.py:117 order/api.py:169 -#: order/models.py:395 part/models.py:1261 +#: order/models.py:395 part/models.py:1260 #: report/templates/report/inventree_build_order_report.html:158 msgid "Responsible" msgstr "負責人" @@ -947,7 +896,7 @@ msgstr "負責此生產工單的使用者或羣組" msgid "External Link" msgstr "外部連結" -#: build/models.py:403 common/models.py:1878 part/models.py:1073 +#: build/models.py:403 common/models.py:1878 part/models.py:1072 #: stock/models.py:937 msgid "Link to external URL" msgstr "外部URL連結" @@ -982,7 +931,7 @@ msgstr "生產工單 {build} 已經完成" msgid "A build order has been completed" msgstr "一張生產工單已經完成" -#: build/models.py:884 build/serializers.py:415 +#: build/models.py:884 build/serializers.py:412 msgid "Serial numbers must be provided for trackable parts" msgstr "對於可跟蹤的零件,必須提供序列號" @@ -998,18 +947,18 @@ msgstr "產出已完成" msgid "Build output does not match Build Order" msgstr "產出與生產訂單不匹配" -#: build/models.py:1082 build/serializers.py:294 build/serializers.py:343 -#: build/serializers.py:967 order/models.py:644 order/serializers.py:591 -#: order/serializers.py:758 part/serializers.py:1639 part/serializers.py:2052 -#: stock/models.py:784 stock/models.py:1655 stock/serializers.py:698 +#: build/models.py:1082 build/serializers.py:291 build/serializers.py:340 +#: build/serializers.py:964 order/models.py:644 order/serializers.py:591 +#: order/serializers.py:758 part/serializers.py:1636 stock/models.py:784 +#: stock/models.py:1647 stock/serializers.py:698 msgid "Quantity must be greater than zero" msgstr "數量必須大於零" -#: build/models.py:1086 build/serializers.py:298 +#: build/models.py:1086 build/serializers.py:295 msgid "Quantity cannot be greater than the output quantity" msgstr "數量不能大於輸出數量" -#: build/models.py:1151 build/serializers.py:610 +#: build/models.py:1151 build/serializers.py:607 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "產出 {serial} 未通過所有必要測試" @@ -1022,11 +971,11 @@ msgstr "生產訂單行項目" msgid "Build object" msgstr "生產對象" -#: build/models.py:1548 build/models.py:1807 build/serializers.py:282 -#: build/serializers.py:328 build/serializers.py:1390 common/models.py:1240 +#: build/models.py:1548 build/models.py:1807 build/serializers.py:279 +#: build/serializers.py:325 build/serializers.py:1387 common/models.py:1240 #: order/models.py:1514 order/models.py:2221 order/serializers.py:1634 -#: order/serializers.py:2094 part/models.py:3289 part/models.py:4278 -#: part/serializers.py:264 +#: order/serializers.py:2094 part/models.py:3294 part/models.py:4262 +#: part/serializers.py:261 #: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_report.html:113 #: report/templates/report/inventree_purchase_order_report.html:29 @@ -1070,11 +1019,11 @@ msgstr "有序號的品項數量必須為1" msgid "Selected stock item does not match BOM line" msgstr "選擇的庫存品項和BOM的項目不符" -#: build/models.py:1797 build/serializers.py:950 build/serializers.py:1254 +#: build/models.py:1797 build/serializers.py:947 build/serializers.py:1251 #: order/serializers.py:1471 order/serializers.py:1492 #: report/templates/report/inventree_sales_order_shipment_report.html:29 #: stock/models.py:383 stock/serializers.py:94 stock/serializers.py:796 -#: stock/serializers.py:1300 stock/serializers.py:1412 +#: stock/serializers.py:1297 stock/serializers.py:1409 msgid "Stock Item" msgstr "庫存品項" @@ -1094,366 +1043,366 @@ msgstr "安裝到" msgid "Destination stock item" msgstr "目的庫存品項" -#: build/serializers.py:113 +#: build/serializers.py:112 msgid "Build Level" msgstr "構建等級" -#: build/serializers.py:124 part/models.py:4128 part/stocktake.py:219 +#: build/serializers.py:121 part/stocktake.py:219 msgid "Part Name" msgstr "零件名稱" -#: build/serializers.py:138 +#: build/serializers.py:135 msgid "Project Code Label" msgstr "項目編碼標籤" -#: build/serializers.py:149 +#: build/serializers.py:146 msgid "Create Child Builds" msgstr "新建子生產項目" -#: build/serializers.py:150 +#: build/serializers.py:147 msgid "Automatically generate child build orders" msgstr "自動生成子生成工單" -#: build/serializers.py:230 build/serializers.py:976 +#: build/serializers.py:227 build/serializers.py:973 msgid "Build Output" msgstr "產出" -#: build/serializers.py:242 +#: build/serializers.py:239 msgid "Build output does not match the parent build" msgstr "產出與之前的生產不匹配" -#: build/serializers.py:246 +#: build/serializers.py:243 msgid "Output part does not match BuildOrder part" msgstr "產出零件與生產訂單零件不匹配" -#: build/serializers.py:250 +#: build/serializers.py:247 msgid "This build output has already been completed" msgstr "此產出已經完成" -#: build/serializers.py:264 +#: build/serializers.py:261 msgid "This build output is not fully allocated" msgstr "此產出尚未完全分配" -#: build/serializers.py:283 build/serializers.py:329 +#: build/serializers.py:280 build/serializers.py:326 msgid "Enter quantity for build output" msgstr "輸入產出數量" -#: build/serializers.py:351 +#: build/serializers.py:348 msgid "Integer quantity required for trackable parts" msgstr "可追蹤的零件數量必須為整數" -#: build/serializers.py:357 +#: build/serializers.py:354 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "因為BOM包含可追蹤的零件,所以數量必須為整數" -#: build/serializers.py:374 order/serializers.py:779 order/serializers.py:1638 +#: build/serializers.py:371 order/serializers.py:779 order/serializers.py:1638 #: stock/serializers.py:709 msgid "Serial Numbers" msgstr "序號" -#: build/serializers.py:375 +#: build/serializers.py:372 msgid "Enter serial numbers for build outputs" msgstr "輸出產出的序列號" -#: build/serializers.py:380 build/serializers.py:505 build/serializers.py:575 -#: build/serializers.py:1258 build/serializers.py:1262 order/serializers.py:747 -#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1277 +#: build/serializers.py:377 build/serializers.py:502 build/serializers.py:572 +#: build/serializers.py:1255 build/serializers.py:1259 order/serializers.py:747 +#: order/serializers.py:898 order/serializers.py:1990 part/serializers.py:1274 #: stock/serializers.py:103 stock/serializers.py:622 stock/serializers.py:720 -#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1444 -#: stock/serializers.py:1734 +#: stock/serializers.py:884 stock/serializers.py:980 stock/serializers.py:1441 +#: stock/serializers.py:1731 msgid "Location" msgstr "地點" -#: build/serializers.py:381 +#: build/serializers.py:378 msgid "Stock location for build output" msgstr "生產輸出的庫存地點" -#: build/serializers.py:396 +#: build/serializers.py:393 msgid "Auto Allocate Serial Numbers" msgstr "自動分配序號" -#: build/serializers.py:398 +#: build/serializers.py:395 msgid "Automatically allocate required items with matching serial numbers" msgstr "自動為需要項目分配對應的序號" -#: build/serializers.py:431 order/serializers.py:876 stock/api.py:1081 -#: stock/models.py:1678 +#: build/serializers.py:428 order/serializers.py:876 stock/api.py:1074 +#: stock/models.py:1670 msgid "The following serial numbers already exist or are invalid" msgstr "序號已存在或無效" -#: build/serializers.py:473 build/serializers.py:529 build/serializers.py:617 +#: build/serializers.py:470 build/serializers.py:526 build/serializers.py:614 msgid "A list of build outputs must be provided" msgstr "必須提供產出清單" -#: build/serializers.py:506 +#: build/serializers.py:503 msgid "Stock location for scrapped outputs" msgstr "廢品產出的庫存位置" -#: build/serializers.py:512 +#: build/serializers.py:509 msgid "Discard Allocations" msgstr "放棄分配" -#: build/serializers.py:513 +#: build/serializers.py:510 msgid "Discard any stock allocations for scrapped outputs" msgstr "取消對廢品產出的任何庫存分配" -#: build/serializers.py:518 +#: build/serializers.py:515 msgid "Reason for scrapping build output(s)" msgstr "廢品產出的原因" -#: build/serializers.py:576 +#: build/serializers.py:573 msgid "Location for completed build outputs" msgstr "已完成刪除的庫存地點" -#: build/serializers.py:582 order/models.py:544 order/models.py:1131 +#: build/serializers.py:579 order/models.py:544 order/models.py:1131 #: order/models.py:2346 order/serializers.py:789 order/serializers.py:1958 #: stock/serializers.py:592 stock/serializers.py:987 stock/serializers.py:1044 -#: stock/serializers.py:1601 +#: stock/serializers.py:1598 msgid "Status" msgstr "狀態" -#: build/serializers.py:588 +#: build/serializers.py:585 msgid "Accept Incomplete Allocation" msgstr "接受不完整的分配" -#: build/serializers.py:589 +#: build/serializers.py:586 msgid "Complete outputs if stock has not been fully allocated" msgstr "如果庫存尚未全部分配,則完成產出" -#: build/serializers.py:704 +#: build/serializers.py:701 msgid "Consume Allocated Stock" msgstr "消費已分配的庫存" -#: build/serializers.py:705 +#: build/serializers.py:702 msgid "Consume any stock which has already been allocated to this build" msgstr "消耗已分配給此生產的任何庫存" -#: build/serializers.py:711 +#: build/serializers.py:708 msgid "Remove Incomplete Outputs" msgstr "移除未完成的產出" -#: build/serializers.py:712 +#: build/serializers.py:709 msgid "Delete any build outputs which have not been completed" msgstr "刪除所有未完成的產出" -#: build/serializers.py:739 +#: build/serializers.py:736 msgid "Not permitted" msgstr "不允許" -#: build/serializers.py:740 +#: build/serializers.py:737 msgid "Accept as consumed by this build order" msgstr "接受作為此生產訂單的消費" -#: build/serializers.py:741 +#: build/serializers.py:738 msgid "Deallocate before completing this build order" msgstr "完成此生產訂單前取消分配" -#: build/serializers.py:768 +#: build/serializers.py:765 msgid "Overallocated Stock" msgstr "超出分配的庫存" -#: build/serializers.py:771 +#: build/serializers.py:768 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "如何處理分配給生產訂單的額外庫存項" -#: build/serializers.py:782 +#: build/serializers.py:779 msgid "Some stock items have been overallocated" msgstr "有庫存項目已被過度分配" -#: build/serializers.py:787 +#: build/serializers.py:784 msgid "Accept Unallocated" msgstr "接受未分配" -#: build/serializers.py:789 +#: build/serializers.py:786 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "接受庫存項未被完全分配至生產訂單" -#: build/serializers.py:800 +#: build/serializers.py:797 msgid "Required stock has not been fully allocated" msgstr "所需庫存尚未完全分配" -#: build/serializers.py:805 order/serializers.py:437 order/serializers.py:1539 +#: build/serializers.py:802 order/serializers.py:437 order/serializers.py:1539 msgid "Accept Incomplete" msgstr "接受不完整" -#: build/serializers.py:807 +#: build/serializers.py:804 msgid "Accept that the required number of build outputs have not been completed" msgstr "允許所需數量的產出未完成" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Required build quantity has not been completed" msgstr "未完成所需生產數量" -#: build/serializers.py:830 +#: build/serializers.py:827 msgid "Build order has open child build orders" msgstr "生產訂單有打開的子生產訂單" -#: build/serializers.py:833 +#: build/serializers.py:830 msgid "Build order must be in production state" msgstr "生產訂單必須處於生產狀態" -#: build/serializers.py:836 +#: build/serializers.py:833 msgid "Build order has incomplete outputs" msgstr "生產訂單有未完成的產出" -#: build/serializers.py:875 +#: build/serializers.py:872 msgid "Build Line" msgstr "生產行" -#: build/serializers.py:883 +#: build/serializers.py:880 msgid "Build output" msgstr "產出" -#: build/serializers.py:891 +#: build/serializers.py:888 msgid "Build output must point to the same build" msgstr "生產產出必須指向相同的生產" -#: build/serializers.py:922 +#: build/serializers.py:919 msgid "Build Line Item" msgstr "生產行項目" -#: build/serializers.py:940 +#: build/serializers.py:937 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必須與生產訂單零件相同" -#: build/serializers.py:956 stock/serializers.py:1313 +#: build/serializers.py:953 stock/serializers.py:1310 msgid "Item must be in stock" msgstr "商品必須有庫存" -#: build/serializers.py:999 order/serializers.py:1525 +#: build/serializers.py:996 order/serializers.py:1525 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "可用量 ({q}) 超出限制" -#: build/serializers.py:1005 +#: build/serializers.py:1002 msgid "Build output must be specified for allocation of tracked parts" msgstr "對於被追蹤的零件的分配,必須指定生產產出" -#: build/serializers.py:1013 +#: build/serializers.py:1010 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "對於未被追蹤的零件,無法指定生產產出" -#: build/serializers.py:1037 order/serializers.py:1798 +#: build/serializers.py:1034 order/serializers.py:1798 msgid "Allocation items must be provided" msgstr "必須提供分配項目" -#: build/serializers.py:1101 +#: build/serializers.py:1098 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "零件來源的庫存地點(留空則可來源於任何庫存地點)" -#: build/serializers.py:1110 +#: build/serializers.py:1107 msgid "Exclude Location" msgstr "排除位置" -#: build/serializers.py:1111 +#: build/serializers.py:1108 msgid "Exclude stock items from this selected location" msgstr "從該選定的庫存地點排除庫存項" -#: build/serializers.py:1116 +#: build/serializers.py:1113 msgid "Interchangeable Stock" msgstr "可互換庫存" -#: build/serializers.py:1117 +#: build/serializers.py:1114 msgid "Stock items in multiple locations can be used interchangeably" msgstr "在多個位置的庫存項目可以互換使用" -#: build/serializers.py:1122 +#: build/serializers.py:1119 msgid "Substitute Stock" msgstr "替代品庫存" -#: build/serializers.py:1123 +#: build/serializers.py:1120 msgid "Allow allocation of substitute parts" msgstr "允許分配可替換的零件" -#: build/serializers.py:1128 +#: build/serializers.py:1125 msgid "Optional Items" msgstr "可選項目" -#: build/serializers.py:1129 +#: build/serializers.py:1126 msgid "Allocate optional BOM items to build order" msgstr "分配可選的物料清單給生產訂單" -#: build/serializers.py:1151 +#: build/serializers.py:1148 msgid "Failed to start auto-allocation task" msgstr "啓動自動分配任務失敗" -#: build/serializers.py:1222 +#: build/serializers.py:1219 msgid "BOM Reference" msgstr "物料清單參考" -#: build/serializers.py:1228 +#: build/serializers.py:1225 msgid "BOM Part ID" msgstr "物料清單零件識別號碼" -#: build/serializers.py:1235 +#: build/serializers.py:1232 msgid "BOM Part Name" msgstr "物料清單零件名稱" -#: build/serializers.py:1266 build/serializers.py:1414 +#: build/serializers.py:1263 build/serializers.py:1411 msgid "Build" msgstr "" -#: build/serializers.py:1270 company/models.py:657 order/api.py:262 +#: build/serializers.py:1267 company/models.py:657 order/api.py:262 #: order/api.py:480 order/serializers.py:583 stock/models.py:880 #: stock/serializers.py:607 msgid "Supplier Part" msgstr "供應商零件" -#: build/serializers.py:1277 stock/serializers.py:633 +#: build/serializers.py:1274 stock/serializers.py:633 msgid "Allocated Quantity" msgstr "已分配數量" -#: build/serializers.py:1351 +#: build/serializers.py:1348 msgid "Build Reference" msgstr "構建參考" -#: build/serializers.py:1361 +#: build/serializers.py:1358 msgid "Part Category Name" msgstr "零件類別名稱" -#: build/serializers.py:1381 common/setting/system.py:433 part/models.py:1181 +#: build/serializers.py:1378 common/setting/system.py:453 part/models.py:1180 msgid "Trackable" msgstr "可追蹤" -#: build/serializers.py:1384 +#: build/serializers.py:1381 msgid "Inherited" msgstr "已繼承的" -#: build/serializers.py:1387 part/models.py:4338 +#: build/serializers.py:1384 part/models.py:4322 msgid "Allow Variants" msgstr "允許變體" -#: build/serializers.py:1392 build/serializers.py:1396 part/models.py:4136 -#: part/models.py:4614 stock/api.py:835 +#: build/serializers.py:1389 build/serializers.py:1393 part/models.py:4120 +#: part/models.py:4598 stock/api.py:828 msgid "BOM Item" msgstr "物料清單項" -#: build/serializers.py:1420 +#: build/serializers.py:1417 msgid "Allocated Stock" msgstr "分配庫存" -#: build/serializers.py:1422 company/serializers.py:410 -#: order/serializers.py:1244 part/serializers.py:960 part/serializers.py:1665 +#: build/serializers.py:1419 company/serializers.py:406 +#: order/serializers.py:1244 part/serializers.py:957 part/serializers.py:1662 msgid "On Order" msgstr "已訂購" -#: build/serializers.py:1424 order/serializers.py:1245 part/serializers.py:1667 +#: build/serializers.py:1421 order/serializers.py:1245 part/serializers.py:1664 msgid "In Production" msgstr "生產中" -#: build/serializers.py:1426 part/serializers.py:967 +#: build/serializers.py:1423 part/serializers.py:964 msgid "External Stock" msgstr "外部庫存" -#: build/serializers.py:1427 part/serializers.py:1692 +#: build/serializers.py:1424 part/serializers.py:1689 msgid "Available Stock" msgstr "可用庫存" -#: build/serializers.py:1429 +#: build/serializers.py:1426 msgid "Available Substitute Stock" msgstr "可用的替代品庫存" -#: build/serializers.py:1432 +#: build/serializers.py:1429 msgid "Available Variant Stock" msgstr "可用的變體庫存" @@ -1479,7 +1428,7 @@ msgstr "已取消" #: build/status_codes.py:15 generic/states/tests.py:23 importer/models.py:521 #: importer/status_codes.py:27 order/status_codes.py:15 -#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:648 +#: order/status_codes.py:52 order/status_codes.py:83 report/models.py:646 msgid "Complete" msgstr "完成" @@ -1583,10 +1532,10 @@ msgstr "鍵字符串必須是唯一的" #: common/models.py:1218 common/models.py:1219 common/models.py:1323 #: common/models.py:1324 common/models.py:1569 common/models.py:1570 #: common/models.py:1893 common/models.py:1894 common/models.py:2275 -#: importer/models.py:89 part/models.py:3312 part/models.py:3399 -#: part/models.py:3473 part/models.py:3501 plugin/models.py:316 +#: importer/models.py:89 part/models.py:3317 part/models.py:3404 +#: part/models.py:3478 part/models.py:3506 plugin/models.py:316 #: plugin/models.py:317 report/templates/report/inventree_test_report.html:105 -#: users/models.py:111 +#: users/models.py:109 msgid "User" msgstr "使用者" @@ -1594,7 +1543,7 @@ msgstr "使用者" msgid "Price break quantity" msgstr "批發價數量" -#: common/models.py:1248 company/serializers.py:545 order/models.py:1588 +#: common/models.py:1248 company/serializers.py:539 order/models.py:1588 #: order/models.py:2648 msgid "Price" msgstr "價格" @@ -1619,7 +1568,7 @@ msgstr "此網絡鈎子的名稱" msgid "Is this webhook active" msgstr "網絡鈎子是否已啓用" -#: common/models.py:1331 users/models.py:159 +#: common/models.py:1331 users/models.py:157 msgid "Token" msgstr "令牌" @@ -1683,14 +1632,14 @@ msgstr "這條消息的工作完成了嗎?" msgid "Id" msgstr "標識" -#: common/models.py:1620 part/serializers.py:270 +#: common/models.py:1620 part/serializers.py:267 msgid "Title" msgstr "標題" #: common/models.py:1622 common/models.py:1877 company/models.py:146 #: company/models.py:441 company/models.py:507 company/models.py:811 #: order/models.py:357 order/models.py:1543 order/models.py:1991 -#: part/models.py:1072 +#: part/models.py:1071 #: report/templates/report/inventree_build_order_report.html:164 msgid "Link" msgstr "連結" @@ -1715,11 +1664,10 @@ msgstr "閲讀" msgid "Was this news item read?" msgstr "這條新聞被閲讀了嗎?" -#: common/models.py:1648 company/models.py:156 part/models.py:1082 +#: common/models.py:1648 company/models.py:156 part/models.py:1081 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 -#: templates/503.html:31 msgid "Image" msgstr "圖像" @@ -1767,7 +1715,7 @@ msgstr "定義" msgid "Unit definition" msgstr "單位定義" -#: common/models.py:1811 common/models.py:1868 stock/models.py:2755 +#: common/models.py:1811 common/models.py:1868 stock/models.py:2744 #: stock/serializers.py:244 msgid "Attachment" msgstr "附件" @@ -1837,7 +1785,7 @@ msgid "State logical key that is equal to this custom state in business logic" msgstr "等同於商業邏輯中自定義狀態的狀態邏輯鍵" #: common/models.py:1983 common/models.py:2222 company/models.py:595 -#: report/templates/report/inventree_test_report.html:104 stock/models.py:2747 +#: report/templates/report/inventree_test_report.html:104 stock/models.py:2736 msgid "Value" msgstr "值" @@ -1850,7 +1798,7 @@ msgid "Name of the state" msgstr "狀態名" #: common/models.py:1999 common/models.py:2228 generic/states/serializers.py:22 -#: part/serializers.py:272 +#: part/serializers.py:269 msgid "Label" msgstr "標籤" @@ -1866,7 +1814,7 @@ msgstr "顏色" msgid "Color that will be displayed in the frontend" msgstr "將在前端顯示顏色" -#: common/models.py:2016 part/serializers.py:274 +#: common/models.py:2016 part/serializers.py:271 msgid "Model" msgstr "模式" @@ -1906,7 +1854,7 @@ msgstr "邏輯密鑰必須在參考狀態的邏輯鍵中" msgid "Name must be different from the names of the reference status" msgstr "" -#: common/models.py:2109 common/models.py:2216 part/models.py:3812 +#: common/models.py:2109 common/models.py:2216 part/models.py:3817 msgid "Selection List" msgstr "" @@ -1922,7 +1870,7 @@ msgstr "" msgid "Description of the selection list" msgstr "" -#: common/models.py:2128 part/models.py:1209 +#: common/models.py:2128 part/models.py:1208 msgid "Locked" msgstr "已鎖定" @@ -2006,7 +1954,7 @@ msgstr "" msgid "Barcode Scan" msgstr "掃描條碼" -#: common/models.py:2264 importer/models.py:515 part/models.py:3977 +#: common/models.py:2264 importer/models.py:515 part/models.py:3982 msgid "Data" msgstr "數據" @@ -2047,7 +1995,7 @@ msgid "Response data from the barcode scan" msgstr "掃描條碼的響應數據" #: common/models.py:2310 report/templates/report/inventree_test_report.html:103 -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Result" msgstr "結果" @@ -2165,1065 +2113,1081 @@ msgstr "用户無權為此模式創建或編輯附件" msgid "Selection list is locked" msgstr "" -#: common/setting/system.py:96 +#: common/setting/system.py:97 msgid "No group" msgstr "無分組" -#: common/setting/system.py:150 +#: common/setting/system.py:156 msgid "Site URL is locked by configuration" msgstr "網站 URL 已配置為鎖定" -#: common/setting/system.py:161 +#: common/setting/system.py:167 msgid "Restart required" msgstr "需要重啓" -#: common/setting/system.py:162 +#: common/setting/system.py:168 msgid "A setting has been changed which requires a server restart" msgstr "設置已更改,需要服務器重啓" -#: common/setting/system.py:168 +#: common/setting/system.py:174 msgid "Pending migrations" msgstr "等待遷移" -#: common/setting/system.py:169 +#: common/setting/system.py:175 msgid "Number of pending database migrations" msgstr "待處理的數據庫遷移數" -#: common/setting/system.py:174 +#: common/setting/system.py:180 +msgid "Instance ID" +msgstr "" + +#: common/setting/system.py:181 +msgid "Unique identifier for this InvenTree instance" +msgstr "" + +#: common/setting/system.py:186 +msgid "Announce ID" +msgstr "" + +#: common/setting/system.py:188 +msgid "Announce the instance ID of the server in the server status info (unauthenticated)" +msgstr "" + +#: common/setting/system.py:194 msgid "Server Instance Name" msgstr "服務器實例名稱" -#: common/setting/system.py:176 +#: common/setting/system.py:196 msgid "String descriptor for the server instance" msgstr "服務器實例的字符串描述符" -#: common/setting/system.py:180 +#: common/setting/system.py:200 msgid "Use instance name" msgstr "使用實例名稱" -#: common/setting/system.py:181 +#: common/setting/system.py:201 msgid "Use the instance name in the title-bar" msgstr "在標題欄中使用實例名稱" -#: common/setting/system.py:186 +#: common/setting/system.py:206 msgid "Restrict showing `about`" msgstr "限制顯示 `關於` 信息" -#: common/setting/system.py:187 +#: common/setting/system.py:207 msgid "Show the `about` modal only to superusers" msgstr "只向超級管理員顯示關於信息" -#: common/setting/system.py:192 company/models.py:108 company/models.py:109 +#: common/setting/system.py:212 company/models.py:108 company/models.py:109 msgid "Company name" msgstr "公司名稱" -#: common/setting/system.py:193 +#: common/setting/system.py:213 msgid "Internal company name" msgstr "內部公司名稱" -#: common/setting/system.py:197 +#: common/setting/system.py:217 msgid "Base URL" msgstr "基本 URL" -#: common/setting/system.py:198 +#: common/setting/system.py:218 msgid "Base URL for server instance" msgstr "服務器實例的基準 URL" -#: common/setting/system.py:204 +#: common/setting/system.py:224 msgid "Default Currency" msgstr "默認貨幣單位" -#: common/setting/system.py:205 +#: common/setting/system.py:225 msgid "Select base currency for pricing calculations" msgstr "選擇價格計算的默認貨幣" -#: common/setting/system.py:211 +#: common/setting/system.py:231 msgid "Supported Currencies" msgstr "支持幣種" -#: common/setting/system.py:212 +#: common/setting/system.py:232 msgid "List of supported currency codes" msgstr "支持的貨幣代碼列表" -#: common/setting/system.py:218 +#: common/setting/system.py:238 msgid "Currency Update Interval" msgstr "貨幣更新間隔時間" -#: common/setting/system.py:219 +#: common/setting/system.py:239 msgid "How often to update exchange rates (set to zero to disable)" msgstr "檢查更新的頻率(設置為零以禁用)" -#: common/setting/system.py:221 common/setting/system.py:261 -#: common/setting/system.py:274 common/setting/system.py:282 -#: common/setting/system.py:289 common/setting/system.py:298 -#: common/setting/system.py:547 common/setting/system.py:567 -#: common/setting/system.py:664 common/setting/system.py:1048 +#: common/setting/system.py:241 common/setting/system.py:281 +#: common/setting/system.py:294 common/setting/system.py:302 +#: common/setting/system.py:309 common/setting/system.py:318 +#: common/setting/system.py:567 common/setting/system.py:587 +#: common/setting/system.py:684 common/setting/system.py:1068 msgid "days" msgstr "天" -#: common/setting/system.py:225 +#: common/setting/system.py:245 msgid "Currency Update Plugin" msgstr "幣種更新插件" -#: common/setting/system.py:226 +#: common/setting/system.py:246 msgid "Currency update plugin to use" msgstr "使用貨幣更新插件" -#: common/setting/system.py:231 +#: common/setting/system.py:251 msgid "Download from URL" msgstr "從URL下載" -#: common/setting/system.py:232 +#: common/setting/system.py:252 msgid "Allow download of remote images and files from external URL" msgstr "允許從外部 URL 下載遠程圖片和文件" -#: common/setting/system.py:237 +#: common/setting/system.py:257 msgid "Download Size Limit" msgstr "下載大小限制" -#: common/setting/system.py:238 +#: common/setting/system.py:258 msgid "Maximum allowable download size for remote image" msgstr "遠程圖片的最大允許下載大小" -#: common/setting/system.py:244 +#: common/setting/system.py:264 msgid "User-agent used to download from URL" msgstr "用於從 URL 下載的 User-agent" -#: common/setting/system.py:246 +#: common/setting/system.py:266 msgid "Allow to override the user-agent used to download images and files from external URL (leave blank for the default)" msgstr "允許覆蓋用於從外部 URL 下載圖片和文件的 user-agent(留空為默認值)" -#: common/setting/system.py:251 +#: common/setting/system.py:271 msgid "Strict URL Validation" msgstr "嚴格的 URL 驗證" -#: common/setting/system.py:252 +#: common/setting/system.py:272 msgid "Require schema specification when validating URLs" msgstr "驗證 URL 時需要 schema 規範" -#: common/setting/system.py:257 +#: common/setting/system.py:277 msgid "Update Check Interval" msgstr "更新檢查間隔" -#: common/setting/system.py:258 +#: common/setting/system.py:278 msgid "How often to check for updates (set to zero to disable)" msgstr "檢查更新的頻率(設置為零以禁用)" -#: common/setting/system.py:264 +#: common/setting/system.py:284 msgid "Automatic Backup" msgstr "自動備份" -#: common/setting/system.py:265 +#: common/setting/system.py:285 msgid "Enable automatic backup of database and media files" msgstr "啟動資料庫和媒體文件自動備份" -#: common/setting/system.py:270 +#: common/setting/system.py:290 msgid "Auto Backup Interval" msgstr "自動備份間隔" -#: common/setting/system.py:271 +#: common/setting/system.py:291 msgid "Specify number of days between automated backup events" msgstr "指定自動備份之間的間隔天數" -#: common/setting/system.py:277 +#: common/setting/system.py:297 msgid "Task Deletion Interval" msgstr "任務刪除間隔" -#: common/setting/system.py:279 +#: common/setting/system.py:299 msgid "Background task results will be deleted after specified number of days" msgstr "後台任務結果將在指定天數後刪除" -#: common/setting/system.py:286 +#: common/setting/system.py:306 msgid "Error Log Deletion Interval" msgstr "錯誤日誌刪除間隔" -#: common/setting/system.py:287 +#: common/setting/system.py:307 msgid "Error logs will be deleted after specified number of days" msgstr "錯誤日誌將在指定天數後被刪除" -#: common/setting/system.py:293 +#: common/setting/system.py:313 msgid "Notification Deletion Interval" msgstr "通知刪除間隔" -#: common/setting/system.py:295 +#: common/setting/system.py:315 msgid "User notifications will be deleted after specified number of days" msgstr "用户通知將在指定天數後被刪除" -#: common/setting/system.py:302 +#: common/setting/system.py:322 msgid "Barcode Support" msgstr "條形碼支持" -#: common/setting/system.py:303 +#: common/setting/system.py:323 msgid "Enable barcode scanner support in the web interface" msgstr "在網頁界面啓用條形碼掃描器支持" -#: common/setting/system.py:308 +#: common/setting/system.py:328 msgid "Store Barcode Results" msgstr "存儲條碼結果" -#: common/setting/system.py:309 +#: common/setting/system.py:329 msgid "Store barcode scan results in the database" msgstr "存儲條碼掃描結果" -#: common/setting/system.py:314 +#: common/setting/system.py:334 msgid "Barcode Scans Maximum Count" msgstr "條碼掃描最大計數" -#: common/setting/system.py:315 +#: common/setting/system.py:335 msgid "Maximum number of barcode scan results to store" msgstr "存儲條碼掃描結果的最大數量" -#: common/setting/system.py:320 +#: common/setting/system.py:340 msgid "Barcode Input Delay" msgstr "條形碼掃描延遲設置" -#: common/setting/system.py:321 +#: common/setting/system.py:341 msgid "Barcode input processing delay time" msgstr "條形碼輸入處理延遲時間" -#: common/setting/system.py:327 +#: common/setting/system.py:347 msgid "Barcode Webcam Support" msgstr "條碼攝像頭支持" -#: common/setting/system.py:328 +#: common/setting/system.py:348 msgid "Allow barcode scanning via webcam in browser" msgstr "允許通過網絡攝像頭掃描條形碼" -#: common/setting/system.py:333 +#: common/setting/system.py:353 msgid "Barcode Show Data" msgstr "條形碼顯示數據" -#: common/setting/system.py:334 +#: common/setting/system.py:354 msgid "Display barcode data in browser as text" msgstr "在瀏覽器中將條形碼數據顯示為文本" -#: common/setting/system.py:339 +#: common/setting/system.py:359 msgid "Barcode Generation Plugin" msgstr "條形碼生成插件" -#: common/setting/system.py:340 +#: common/setting/system.py:360 msgid "Plugin to use for internal barcode data generation" msgstr "用於內部條形碼數據生成的插件" -#: common/setting/system.py:345 +#: common/setting/system.py:365 msgid "Part Revisions" msgstr "零件修訂" -#: common/setting/system.py:346 +#: common/setting/system.py:366 msgid "Enable revision field for Part" msgstr "啓用零件修訂字段" -#: common/setting/system.py:351 +#: common/setting/system.py:371 msgid "Assembly Revision Only" msgstr "僅限裝配修訂版本" -#: common/setting/system.py:352 +#: common/setting/system.py:372 msgid "Only allow revisions for assembly parts" msgstr "僅允許對裝配零件進行修訂" -#: common/setting/system.py:357 +#: common/setting/system.py:377 msgid "Allow Deletion from Assembly" msgstr "允許從裝配中刪除" -#: common/setting/system.py:358 +#: common/setting/system.py:378 msgid "Allow deletion of parts which are used in an assembly" msgstr "允許刪除已在裝配中使用的零件" -#: common/setting/system.py:363 +#: common/setting/system.py:383 msgid "IPN Regex" msgstr "IPN 內部零件號" -#: common/setting/system.py:364 +#: common/setting/system.py:384 msgid "Regular expression pattern for matching Part IPN" msgstr "匹配零件 IPN(內部零件號)的正則表達式模式" -#: common/setting/system.py:367 +#: common/setting/system.py:387 msgid "Allow Duplicate IPN" msgstr "允許重複的 IPN(內部零件號)" -#: common/setting/system.py:368 +#: common/setting/system.py:388 msgid "Allow multiple parts to share the same IPN" msgstr "允許多個零件共享相同的 IPN(內部零件號)" -#: common/setting/system.py:373 +#: common/setting/system.py:393 msgid "Allow Editing IPN" msgstr "允許編輯 IPN(內部零件號)" -#: common/setting/system.py:374 +#: common/setting/system.py:394 msgid "Allow changing the IPN value while editing a part" msgstr "允許編輯零件時更改內部零件號" -#: common/setting/system.py:379 +#: common/setting/system.py:399 msgid "Copy Part BOM Data" msgstr "複製零件物料清單數據" -#: common/setting/system.py:380 +#: common/setting/system.py:400 msgid "Copy BOM data by default when duplicating a part" msgstr "複製零件時默認複製物料清單數據" -#: common/setting/system.py:385 +#: common/setting/system.py:405 msgid "Copy Part Parameter Data" msgstr "複製零件參數數據" -#: common/setting/system.py:386 +#: common/setting/system.py:406 msgid "Copy parameter data by default when duplicating a part" msgstr "複製零件時默認複製參數數據" -#: common/setting/system.py:391 +#: common/setting/system.py:411 msgid "Copy Part Test Data" msgstr "複製零件測試數據" -#: common/setting/system.py:392 +#: common/setting/system.py:412 msgid "Copy test data by default when duplicating a part" msgstr "複製零件時默認複製測試數據" -#: common/setting/system.py:397 +#: common/setting/system.py:417 msgid "Copy Category Parameter Templates" msgstr "複製類別參數模板" -#: common/setting/system.py:398 +#: common/setting/system.py:418 msgid "Copy category parameter templates when creating a part" msgstr "創建零件時複製類別參數模板" -#: common/setting/system.py:403 part/models.py:3971 report/models.py:317 +#: common/setting/system.py:423 part/models.py:3976 report/models.py:317 #: report/models.py:502 report/serializers.py:91 report/serializers.py:132 #: stock/serializers.py:233 msgid "Template" msgstr "模板" -#: common/setting/system.py:404 +#: common/setting/system.py:424 msgid "Parts are templates by default" msgstr "零件默認為模板" -#: common/setting/system.py:410 +#: common/setting/system.py:430 msgid "Parts can be assembled from other components by default" msgstr "默認情況下,元件可由其他零件組裝而成" -#: common/setting/system.py:415 part/models.py:1175 part/serializers.py:1657 -#: part/serializers.py:1662 +#: common/setting/system.py:435 part/models.py:1174 part/serializers.py:1654 +#: part/serializers.py:1659 msgid "Component" msgstr "組件" -#: common/setting/system.py:416 +#: common/setting/system.py:436 msgid "Parts can be used as sub-components by default" msgstr "默認情況下,零件可用作子部件" -#: common/setting/system.py:421 part/models.py:1193 +#: common/setting/system.py:441 part/models.py:1192 msgid "Purchaseable" msgstr "可購買" -#: common/setting/system.py:422 +#: common/setting/system.py:442 msgid "Parts are purchaseable by default" msgstr "默認情況下可購買零件" -#: common/setting/system.py:427 part/models.py:1199 stock/api.py:596 +#: common/setting/system.py:447 part/models.py:1198 stock/api.py:589 msgid "Salable" msgstr "可銷售" -#: common/setting/system.py:428 +#: common/setting/system.py:448 msgid "Parts are salable by default" msgstr "零件默認為可銷售" -#: common/setting/system.py:434 +#: common/setting/system.py:454 msgid "Parts are trackable by default" msgstr "默認情況下可跟蹤零件" -#: common/setting/system.py:439 part/models.py:1215 +#: common/setting/system.py:459 part/models.py:1214 msgid "Virtual" msgstr "虛擬的" -#: common/setting/system.py:440 +#: common/setting/system.py:460 msgid "Parts are virtual by default" msgstr "默認情況下,零件是虛擬的" -#: common/setting/system.py:445 +#: common/setting/system.py:465 msgid "Show Import in Views" msgstr "在視圖中顯示導入" -#: common/setting/system.py:446 +#: common/setting/system.py:466 msgid "Display the import wizard in some part views" msgstr "在某些零件視圖中顯示導入嚮導" -#: common/setting/system.py:451 +#: common/setting/system.py:471 msgid "Show related parts" msgstr "顯示相關零件" -#: common/setting/system.py:452 +#: common/setting/system.py:472 msgid "Display related parts for a part" msgstr "顯示零件的相關零件" -#: common/setting/system.py:457 +#: common/setting/system.py:477 msgid "Initial Stock Data" msgstr "初始庫存數據" -#: common/setting/system.py:458 +#: common/setting/system.py:478 msgid "Allow creation of initial stock when adding a new part" msgstr "允許在添加新零件時創建初始庫存" -#: common/setting/system.py:463 +#: common/setting/system.py:483 msgid "Initial Supplier Data" msgstr "初始供應商數據" -#: common/setting/system.py:465 +#: common/setting/system.py:485 msgid "Allow creation of initial supplier data when adding a new part" msgstr "允許在添加新零件時創建初始供應商數據" -#: common/setting/system.py:471 +#: common/setting/system.py:491 msgid "Part Name Display Format" msgstr "零件名稱顯示格式" -#: common/setting/system.py:472 +#: common/setting/system.py:492 msgid "Format to display the part name" msgstr "顯示零件名稱的格式" -#: common/setting/system.py:478 +#: common/setting/system.py:498 msgid "Part Category Default Icon" msgstr "零件類別默認圖標" -#: common/setting/system.py:479 +#: common/setting/system.py:499 msgid "Part category default icon (empty means no icon)" msgstr "零件類別默認圖標 (空表示沒有圖標)" -#: common/setting/system.py:484 +#: common/setting/system.py:504 msgid "Enforce Parameter Units" msgstr "強制參數單位" -#: common/setting/system.py:486 +#: common/setting/system.py:506 msgid "If units are provided, parameter values must match the specified units" msgstr "如果提供了單位,參數值必須與指定的單位匹配" -#: common/setting/system.py:492 +#: common/setting/system.py:512 msgid "Minimum Pricing Decimal Places" msgstr "最小定價小數位數" -#: common/setting/system.py:494 +#: common/setting/system.py:514 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "呈現定價數據時顯示的最小小數位數" -#: common/setting/system.py:505 +#: common/setting/system.py:525 msgid "Maximum Pricing Decimal Places" msgstr "最大定價小數位數" -#: common/setting/system.py:507 +#: common/setting/system.py:527 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "呈現定價數據時顯示的最大小數位數" -#: common/setting/system.py:518 +#: common/setting/system.py:538 msgid "Use Supplier Pricing" msgstr "使用供應商定價" -#: common/setting/system.py:520 +#: common/setting/system.py:540 msgid "Include supplier price breaks in overall pricing calculations" msgstr "將供應商的價批發價納入總體定價計算中" -#: common/setting/system.py:526 +#: common/setting/system.py:546 msgid "Purchase History Override" msgstr "購買歷史記錄覆蓋" -#: common/setting/system.py:528 +#: common/setting/system.py:548 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "歷史採購訂單定價優先於供應商批發價" -#: common/setting/system.py:534 +#: common/setting/system.py:554 msgid "Use Stock Item Pricing" msgstr "使用庫存項定價" -#: common/setting/system.py:536 +#: common/setting/system.py:556 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "使用手動輸入的庫存數據進行定價計算" -#: common/setting/system.py:542 +#: common/setting/system.py:562 msgid "Stock Item Pricing Age" msgstr "庫存項目定價時間" -#: common/setting/system.py:544 +#: common/setting/system.py:564 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "從定價計算中排除超過此天數的庫存項目" -#: common/setting/system.py:551 +#: common/setting/system.py:571 msgid "Use Variant Pricing" msgstr "使用變體定價" -#: common/setting/system.py:552 +#: common/setting/system.py:572 msgid "Include variant pricing in overall pricing calculations" msgstr "在整體定價計算中包括變體定價" -#: common/setting/system.py:557 +#: common/setting/system.py:577 msgid "Active Variants Only" msgstr "僅限活躍變體" -#: common/setting/system.py:559 +#: common/setting/system.py:579 msgid "Only use active variant parts for calculating variant pricing" msgstr "僅使用活躍變體零件計算變體價格" -#: common/setting/system.py:565 +#: common/setting/system.py:585 msgid "Pricing Rebuild Interval" msgstr "價格重建間隔" -#: common/setting/system.py:566 +#: common/setting/system.py:586 msgid "Number of days before part pricing is automatically updated" msgstr "零件價格自動更新前的天數" -#: common/setting/system.py:572 +#: common/setting/system.py:592 msgid "Internal Prices" msgstr "內部價格" -#: common/setting/system.py:573 +#: common/setting/system.py:593 msgid "Enable internal prices for parts" msgstr "啓用內部零件價格" -#: common/setting/system.py:578 +#: common/setting/system.py:598 msgid "Internal Price Override" msgstr "覆蓋內部價格" -#: common/setting/system.py:580 +#: common/setting/system.py:600 msgid "If available, internal prices override price range calculations" msgstr "如果有內部價格,內部價格將覆蓋價格範圍計算" -#: common/setting/system.py:586 +#: common/setting/system.py:606 msgid "Enable label printing" msgstr "啓用標籤打印功能" -#: common/setting/system.py:587 +#: common/setting/system.py:607 msgid "Enable label printing from the web interface" msgstr "啓用從網絡界面打印標籤" -#: common/setting/system.py:592 +#: common/setting/system.py:612 msgid "Label Image DPI" msgstr "標籤圖片 DPI" -#: common/setting/system.py:594 +#: common/setting/system.py:614 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "生成圖像文件以供標籤打印插件使用時的 DPI 分辨率" -#: common/setting/system.py:600 +#: common/setting/system.py:620 msgid "Enable Reports" msgstr "啓用報告" -#: common/setting/system.py:601 +#: common/setting/system.py:621 msgid "Enable generation of reports" msgstr "啓用報告生成" -#: common/setting/system.py:606 +#: common/setting/system.py:626 msgid "Debug Mode" msgstr "調試模式" -#: common/setting/system.py:607 +#: common/setting/system.py:627 msgid "Generate reports in debug mode (HTML output)" msgstr "以調試模式生成報告(HTML 輸出)" -#: common/setting/system.py:612 +#: common/setting/system.py:632 msgid "Log Report Errors" msgstr "日誌錯誤報告" -#: common/setting/system.py:613 +#: common/setting/system.py:633 msgid "Log errors which occur when generating reports" msgstr "記錄生成報告時出現的錯誤" -#: common/setting/system.py:618 plugin/builtin/labels/label_sheet.py:28 +#: common/setting/system.py:638 plugin/builtin/labels/label_sheet.py:28 #: report/models.py:325 msgid "Page Size" msgstr "頁面大小" -#: common/setting/system.py:619 +#: common/setting/system.py:639 msgid "Default page size for PDF reports" msgstr "PDF 報告默認頁面大小" -#: common/setting/system.py:624 +#: common/setting/system.py:644 msgid "Globally Unique Serials" msgstr "全局唯一序列號" -#: common/setting/system.py:625 +#: common/setting/system.py:645 msgid "Serial numbers for stock items must be globally unique" msgstr "庫存項的序列號必須全局唯一" -#: common/setting/system.py:630 +#: common/setting/system.py:650 msgid "Autofill Serial Numbers" msgstr "自動填充序列號" -#: common/setting/system.py:631 +#: common/setting/system.py:651 msgid "Autofill serial numbers in forms" msgstr "在表格中自動填充序列號" -#: common/setting/system.py:636 +#: common/setting/system.py:656 msgid "Delete Depleted Stock" msgstr "刪除已耗盡的庫存" -#: common/setting/system.py:637 +#: common/setting/system.py:657 msgid "Determines default behavior when a stock item is depleted" msgstr "設置庫存耗盡時的默認行為" -#: common/setting/system.py:642 +#: common/setting/system.py:662 msgid "Batch Code Template" msgstr "批號模板" -#: common/setting/system.py:643 +#: common/setting/system.py:663 msgid "Template for generating default batch codes for stock items" msgstr "為庫存項生成默認批號的模板" -#: common/setting/system.py:647 +#: common/setting/system.py:667 msgid "Stock Expiry" msgstr "庫存過期" -#: common/setting/system.py:648 +#: common/setting/system.py:668 msgid "Enable stock expiry functionality" msgstr "啓用庫存過期功能" -#: common/setting/system.py:653 +#: common/setting/system.py:673 msgid "Sell Expired Stock" msgstr "銷售過期庫存" -#: common/setting/system.py:654 +#: common/setting/system.py:674 msgid "Allow sale of expired stock" msgstr "允許銷售過期庫存" -#: common/setting/system.py:659 +#: common/setting/system.py:679 msgid "Stock Stale Time" msgstr "庫存過期時間" -#: common/setting/system.py:661 +#: common/setting/system.py:681 msgid "Number of days stock items are considered stale before expiring" msgstr "庫存項在到期前被視為過期的天數" -#: common/setting/system.py:668 +#: common/setting/system.py:688 msgid "Build Expired Stock" msgstr "生產過期庫存" -#: common/setting/system.py:669 +#: common/setting/system.py:689 msgid "Allow building with expired stock" msgstr "允許用過期的庫存生產" -#: common/setting/system.py:674 +#: common/setting/system.py:694 msgid "Stock Ownership Control" msgstr "庫存所有權控制" -#: common/setting/system.py:675 +#: common/setting/system.py:695 msgid "Enable ownership control over stock locations and items" msgstr "啓用庫存地點和項目的所有權控制" -#: common/setting/system.py:680 +#: common/setting/system.py:700 msgid "Stock Location Default Icon" msgstr "庫存地點默認圖標" -#: common/setting/system.py:681 +#: common/setting/system.py:701 msgid "Stock location default icon (empty means no icon)" msgstr "庫存地點默認圖標 (空表示沒有圖標)" -#: common/setting/system.py:686 +#: common/setting/system.py:706 msgid "Show Installed Stock Items" msgstr "顯示已安裝的庫存項" -#: common/setting/system.py:687 +#: common/setting/system.py:707 msgid "Display installed stock items in stock tables" msgstr "在庫存表中顯示已安裝的庫存項" -#: common/setting/system.py:692 +#: common/setting/system.py:712 msgid "Check BOM when installing items" msgstr "在安裝項目時檢查物料清單" -#: common/setting/system.py:694 +#: common/setting/system.py:714 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "已安裝的庫存項目必須存在於上級零件的物料清單中" -#: common/setting/system.py:700 +#: common/setting/system.py:720 msgid "Allow Out of Stock Transfer" msgstr "允許超出庫存轉移" -#: common/setting/system.py:702 +#: common/setting/system.py:722 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "允許非庫存的庫存項目在庫存位置之間轉移" -#: common/setting/system.py:708 +#: common/setting/system.py:728 msgid "Build Order Reference Pattern" msgstr "生產訂單參考模式" -#: common/setting/system.py:709 +#: common/setting/system.py:729 msgid "Required pattern for generating Build Order reference field" msgstr "生成生產訂單參考字段所需的模式" -#: common/setting/system.py:714 common/setting/system.py:768 -#: common/setting/system.py:788 common/setting/system.py:824 +#: common/setting/system.py:734 common/setting/system.py:788 +#: common/setting/system.py:808 common/setting/system.py:844 msgid "Require Responsible Owner" msgstr "要求負責人" -#: common/setting/system.py:715 common/setting/system.py:769 -#: common/setting/system.py:789 common/setting/system.py:825 +#: common/setting/system.py:735 common/setting/system.py:789 +#: common/setting/system.py:809 common/setting/system.py:845 msgid "A responsible owner must be assigned to each order" msgstr "必須為每個訂單分配一個負責人" -#: common/setting/system.py:720 +#: common/setting/system.py:740 msgid "Require Active Part" msgstr "需要活動零件" -#: common/setting/system.py:721 +#: common/setting/system.py:741 msgid "Prevent build order creation for inactive parts" msgstr "防止為非活動零件創建生產訂單" -#: common/setting/system.py:726 +#: common/setting/system.py:746 msgid "Require Locked Part" msgstr "需要鎖定零件" -#: common/setting/system.py:727 +#: common/setting/system.py:747 msgid "Prevent build order creation for unlocked parts" msgstr "防止為未鎖定的零件創建生產訂單" -#: common/setting/system.py:732 +#: common/setting/system.py:752 msgid "Require Valid BOM" msgstr "需要有效的物料清單" -#: common/setting/system.py:733 +#: common/setting/system.py:753 msgid "Prevent build order creation unless BOM has been validated" msgstr "除非物料清單已驗證,否則禁止創建生產訂單" -#: common/setting/system.py:738 +#: common/setting/system.py:758 msgid "Require Closed Child Orders" msgstr "需要關閉子訂單" -#: common/setting/system.py:740 +#: common/setting/system.py:760 msgid "Prevent build order completion until all child orders are closed" msgstr "在所有子訂單關閉之前,阻止生產訂單的完成" -#: common/setting/system.py:746 +#: common/setting/system.py:766 msgid "Block Until Tests Pass" msgstr "阻止直到測試通過" -#: common/setting/system.py:748 +#: common/setting/system.py:768 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "在所有必要的測試通過之前,阻止產出完成" -#: common/setting/system.py:754 +#: common/setting/system.py:774 msgid "Enable Return Orders" msgstr "啓用訂單退貨" -#: common/setting/system.py:755 +#: common/setting/system.py:775 msgid "Enable return order functionality in the user interface" msgstr "在用户界面中啓用訂單退貨功能" -#: common/setting/system.py:760 +#: common/setting/system.py:780 msgid "Return Order Reference Pattern" msgstr "退貨訂單參考模式" -#: common/setting/system.py:762 +#: common/setting/system.py:782 msgid "Required pattern for generating Return Order reference field" msgstr "生成退貨訂單參考字段所需的模式" -#: common/setting/system.py:774 +#: common/setting/system.py:794 msgid "Edit Completed Return Orders" msgstr "編輯已完成的退貨訂單" -#: common/setting/system.py:776 +#: common/setting/system.py:796 msgid "Allow editing of return orders after they have been completed" msgstr "允許編輯已完成的退貨訂單" -#: common/setting/system.py:782 +#: common/setting/system.py:802 msgid "Sales Order Reference Pattern" msgstr "銷售訂單參考模式" -#: common/setting/system.py:783 +#: common/setting/system.py:803 msgid "Required pattern for generating Sales Order reference field" msgstr "生成銷售訂單參考字段所需參照模式" -#: common/setting/system.py:794 +#: common/setting/system.py:814 msgid "Sales Order Default Shipment" msgstr "銷售訂單默認配送方式" -#: common/setting/system.py:795 +#: common/setting/system.py:815 msgid "Enable creation of default shipment with sales orders" msgstr "啓用創建銷售訂單的默認配送功能" -#: common/setting/system.py:800 +#: common/setting/system.py:820 msgid "Edit Completed Sales Orders" msgstr "編輯已完成的銷售訂單" -#: common/setting/system.py:802 +#: common/setting/system.py:822 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "允許在訂單配送或完成後編輯銷售訂單" -#: common/setting/system.py:808 +#: common/setting/system.py:828 msgid "Mark Shipped Orders as Complete" msgstr "標記該訂單為已完成?" -#: common/setting/system.py:810 +#: common/setting/system.py:830 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "標記為已發貨的銷售訂單將自動完成,繞過“已發貨”狀態" -#: common/setting/system.py:816 +#: common/setting/system.py:836 msgid "Purchase Order Reference Pattern" msgstr "採購訂單參考模式" -#: common/setting/system.py:818 +#: common/setting/system.py:838 msgid "Required pattern for generating Purchase Order reference field" msgstr "生成採購訂單參考字段所需的模式" -#: common/setting/system.py:830 +#: common/setting/system.py:850 msgid "Edit Completed Purchase Orders" msgstr "編輯已完成的採購訂單" -#: common/setting/system.py:832 +#: common/setting/system.py:852 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "允許在採購訂單已配送或完成後編輯訂單" -#: common/setting/system.py:838 +#: common/setting/system.py:858 msgid "Convert Currency" msgstr "" -#: common/setting/system.py:839 +#: common/setting/system.py:859 msgid "Convert item value to base currency when receiving stock" msgstr "" -#: common/setting/system.py:844 +#: common/setting/system.py:864 msgid "Auto Complete Purchase Orders" msgstr "自動完成採購訂單" -#: common/setting/system.py:846 +#: common/setting/system.py:866 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "當收到所有行項目時,自動將採購訂單標記為完成" -#: common/setting/system.py:853 +#: common/setting/system.py:873 msgid "Enable password forgot" msgstr "忘記啓用密碼" -#: common/setting/system.py:854 +#: common/setting/system.py:874 msgid "Enable password forgot function on the login pages" msgstr "在登錄頁面上啓用忘記密碼功能" -#: common/setting/system.py:859 +#: common/setting/system.py:879 msgid "Enable registration" msgstr "啓用註冊" -#: common/setting/system.py:860 +#: common/setting/system.py:880 msgid "Enable self-registration for users on the login pages" msgstr "在登錄頁面為用户啓用自行註冊功能" -#: common/setting/system.py:865 +#: common/setting/system.py:885 msgid "Enable SSO" msgstr "啓用單點登錄" -#: common/setting/system.py:866 +#: common/setting/system.py:886 msgid "Enable SSO on the login pages" msgstr "在登錄界面啓用單點登錄" -#: common/setting/system.py:871 +#: common/setting/system.py:891 msgid "Enable SSO registration" msgstr "啓用單點登錄註冊" -#: common/setting/system.py:873 +#: common/setting/system.py:893 msgid "Enable self-registration via SSO for users on the login pages" msgstr "允許登錄頁面上的用户通過 SSO 進行自我註冊" -#: common/setting/system.py:879 +#: common/setting/system.py:899 msgid "Enable SSO group sync" msgstr "啓用單點登錄羣組同步" -#: common/setting/system.py:881 +#: common/setting/system.py:901 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "啓用庫存管理系統組和由身份提供者提供的組的同步功能" -#: common/setting/system.py:887 +#: common/setting/system.py:907 msgid "SSO group key" msgstr "單點登錄系統組密鑰" -#: common/setting/system.py:888 +#: common/setting/system.py:908 msgid "The name of the groups claim attribute provided by the IdP" msgstr "由身份提供者提供的組聲明屬性名稱" -#: common/setting/system.py:893 +#: common/setting/system.py:913 msgid "SSO group map" msgstr "單點登錄系統組地圖" -#: common/setting/system.py:895 +#: common/setting/system.py:915 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "從單點登錄系統組組到本地庫存管理系統組的映射。如果本地組不存在,它將被創建。" -#: common/setting/system.py:901 +#: common/setting/system.py:921 msgid "Remove groups outside of SSO" msgstr "移除單點登錄系統以外的羣組" -#: common/setting/system.py:903 +#: common/setting/system.py:923 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "如果分配給用户的組不是身份提供者的後端,是否應該刪除它們。禁用此設置可能會造成安全問題" -#: common/setting/system.py:909 +#: common/setting/system.py:929 msgid "Email required" msgstr "需要郵箱地址" -#: common/setting/system.py:910 +#: common/setting/system.py:930 msgid "Require user to supply mail on signup" msgstr "要求用户在註冊時提供郵件" -#: common/setting/system.py:915 +#: common/setting/system.py:935 msgid "Auto-fill SSO users" msgstr "自動填充單點登錄系統用户" -#: common/setting/system.py:916 +#: common/setting/system.py:936 msgid "Automatically fill out user-details from SSO account-data" msgstr "自動使用單點登錄系統賬户的數據填寫用户詳細信息" -#: common/setting/system.py:921 +#: common/setting/system.py:941 msgid "Mail twice" msgstr "發兩次郵件" -#: common/setting/system.py:922 +#: common/setting/system.py:942 msgid "On signup ask users twice for their mail" msgstr "註冊時詢問用户他們的電子郵件兩次" -#: common/setting/system.py:927 +#: common/setting/system.py:947 msgid "Password twice" msgstr "兩次輸入密碼" -#: common/setting/system.py:928 +#: common/setting/system.py:948 msgid "On signup ask users twice for their password" msgstr "當註冊時請用户輸入密碼兩次" -#: common/setting/system.py:933 +#: common/setting/system.py:953 msgid "Allowed domains" msgstr "域名白名單" -#: common/setting/system.py:935 +#: common/setting/system.py:955 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "限制註冊到某些域名 (逗號分隔,以 @ 開頭)" -#: common/setting/system.py:941 +#: common/setting/system.py:961 msgid "Group on signup" msgstr "註冊羣組" -#: common/setting/system.py:943 +#: common/setting/system.py:963 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "註冊時分配給新用户的組。 如果啓用了單點登錄系統羣組同步,此羣組僅在無法從 IdP 分配任何羣組的情況下才被設置。" -#: common/setting/system.py:949 +#: common/setting/system.py:969 msgid "Enforce MFA" msgstr "強制啓用多因素安全認證" -#: common/setting/system.py:950 +#: common/setting/system.py:970 msgid "Users must use multifactor security." msgstr "用户必須使用多因素安全認證。" -#: common/setting/system.py:955 +#: common/setting/system.py:975 msgid "Check plugins on startup" msgstr "啓動時檢查插件" -#: common/setting/system.py:957 +#: common/setting/system.py:977 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "啓動時檢查全部插件是否已安裝 - 在容器環境中啓用" -#: common/setting/system.py:964 +#: common/setting/system.py:984 msgid "Check for plugin updates" msgstr "檢查插件更新" -#: common/setting/system.py:965 +#: common/setting/system.py:985 msgid "Enable periodic checks for updates to installed plugins" msgstr "啓用定期檢查已安裝插件的更新" -#: common/setting/system.py:971 +#: common/setting/system.py:991 msgid "Enable URL integration" msgstr "啓用統一資源定位符集成" -#: common/setting/system.py:972 +#: common/setting/system.py:992 msgid "Enable plugins to add URL routes" msgstr "啓用插件以添加統一資源定位符路由" -#: common/setting/system.py:978 +#: common/setting/system.py:998 msgid "Enable navigation integration" msgstr "啓用導航集成" -#: common/setting/system.py:979 +#: common/setting/system.py:999 msgid "Enable plugins to integrate into navigation" msgstr "啓用插件以集成到導航中" -#: common/setting/system.py:985 +#: common/setting/system.py:1005 msgid "Enable app integration" msgstr "啓用應用集成" -#: common/setting/system.py:986 +#: common/setting/system.py:1006 msgid "Enable plugins to add apps" msgstr "啓用插件添加應用" -#: common/setting/system.py:992 +#: common/setting/system.py:1012 msgid "Enable schedule integration" msgstr "啓用調度集成" -#: common/setting/system.py:993 +#: common/setting/system.py:1013 msgid "Enable plugins to run scheduled tasks" msgstr "啓用插件來運行預定任務" -#: common/setting/system.py:999 +#: common/setting/system.py:1019 msgid "Enable event integration" msgstr "啓用事件集成" -#: common/setting/system.py:1000 +#: common/setting/system.py:1020 msgid "Enable plugins to respond to internal events" msgstr "啓用插件響應內部事件" -#: common/setting/system.py:1006 +#: common/setting/system.py:1026 msgid "Enable interface integration" msgstr "啓用界面集成" -#: common/setting/system.py:1007 +#: common/setting/system.py:1027 msgid "Enable plugins to integrate into the user interface" msgstr "啓用插件集成到用户界面" -#: common/setting/system.py:1013 +#: common/setting/system.py:1033 msgid "Enable project codes" msgstr "" -#: common/setting/system.py:1014 +#: common/setting/system.py:1034 msgid "Enable project codes for tracking projects" msgstr "" -#: common/setting/system.py:1019 +#: common/setting/system.py:1039 msgid "Stocktake Functionality" msgstr "盤點功能" -#: common/setting/system.py:1021 +#: common/setting/system.py:1041 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "啓用盤點功能以記錄庫存水平和計算庫存值" -#: common/setting/system.py:1027 +#: common/setting/system.py:1047 msgid "Exclude External Locations" msgstr "排除外部地點" -#: common/setting/system.py:1029 +#: common/setting/system.py:1049 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "從盤點計算中排除外部地點的庫存項" -#: common/setting/system.py:1035 +#: common/setting/system.py:1055 msgid "Automatic Stocktake Period" msgstr "自動盤點週期" -#: common/setting/system.py:1037 +#: common/setting/system.py:1057 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "自動盤點記錄之間的天數 (設置為零以禁用)" -#: common/setting/system.py:1043 +#: common/setting/system.py:1063 msgid "Report Deletion Interval" msgstr "報告刪除間隔" -#: common/setting/system.py:1045 +#: common/setting/system.py:1065 msgid "Stocktake reports will be deleted after specified number of days" msgstr "盤點報告將在指定天數後刪除" -#: common/setting/system.py:1052 +#: common/setting/system.py:1072 msgid "Display Users full names" msgstr "顯示用户全名" -#: common/setting/system.py:1053 +#: common/setting/system.py:1073 msgid "Display Users full names instead of usernames" msgstr "顯示用户全名而不是用户名" -#: common/setting/system.py:1058 +#: common/setting/system.py:1078 msgid "Enable Test Station Data" msgstr "啓用測試站數據" -#: common/setting/system.py:1059 +#: common/setting/system.py:1079 msgid "Enable test station data collection for test results" msgstr "啓用測試站數據收集以獲取測試結果" -#: common/setting/system.py:1064 +#: common/setting/system.py:1084 msgid "Create Template on Upload" msgstr "上傳時創建模板" -#: common/setting/system.py:1066 +#: common/setting/system.py:1086 msgid "Create a new test template when uploading test data which does not match an existing template" msgstr "上傳測試數據與現有模板不匹配時創建一個新的測試模板" @@ -3544,13 +3508,13 @@ msgstr "內部零件已激活" msgid "Supplier is Active" msgstr "供應商已激活" -#: company/api.py:299 company/models.py:493 company/serializers.py:425 -#: part/serializers.py:607 +#: company/api.py:299 company/models.py:493 company/serializers.py:421 +#: part/serializers.py:604 msgid "Manufacturer" msgstr "製造商" #: company/api.py:306 company/models.py:97 company/models.py:366 -#: stock/api.py:853 +#: stock/api.py:846 msgid "Company" msgstr "公司" @@ -3727,7 +3691,7 @@ msgid "Link to address information (external)" msgstr "鏈接地址信息 (外部)" #: company/models.py:465 company/models.py:582 company/models.py:804 -#: company/serializers.py:438 +#: company/serializers.py:434 msgid "Manufacturer Part" msgstr "製造商零件" @@ -3744,8 +3708,8 @@ msgstr "選擇零件" msgid "Select manufacturer" msgstr "選擇製造商" -#: company/models.py:500 company/serializers.py:445 order/serializers.py:648 -#: part/serializers.py:617 +#: company/models.py:500 company/serializers.py:441 order/serializers.py:648 +#: part/serializers.py:614 msgid "MPN" msgstr "製造商零件編號" @@ -3773,7 +3737,7 @@ msgstr "參數名稱" msgid "Parameter value" msgstr "參數值" -#: company/models.py:603 part/models.py:1162 part/models.py:3780 +#: company/models.py:603 part/models.py:1161 part/models.py:3785 msgid "Units" msgstr "單位" @@ -3793,11 +3757,11 @@ msgstr "包裝單位必須大於零" msgid "Linked manufacturer part must reference the same base part" msgstr "鏈接的製造商零件必須引用相同的基礎零件" -#: company/models.py:782 company/serializers.py:421 company/serializers.py:434 -#: order/models.py:559 part/serializers.py:591 +#: company/models.py:782 company/serializers.py:417 company/serializers.py:430 +#: order/models.py:559 part/serializers.py:588 #: plugin/builtin/suppliers/digikey.py:25 plugin/builtin/suppliers/lcsc.py:26 #: plugin/builtin/suppliers/mouser.py:24 plugin/builtin/suppliers/tme.py:26 -#: stock/api.py:520 templates/email/overdue_purchase_order.html:16 +#: stock/api.py:513 templates/email/overdue_purchase_order.html:16 msgid "Supplier" msgstr "供應商" @@ -3805,7 +3769,7 @@ msgstr "供應商" msgid "Select supplier" msgstr "選擇供應商" -#: company/models.py:789 part/serializers.py:602 +#: company/models.py:789 part/serializers.py:599 msgid "Supplier stock keeping unit" msgstr "供應商庫存管理單位" @@ -3826,7 +3790,7 @@ msgid "Supplier part description" msgstr "供應商零件説明" #: company/models.py:828 order/serializers.py:801 order/serializers.py:1995 -#: part/models.py:4313 part/models.py:4654 +#: part/models.py:4297 part/models.py:4638 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 @@ -3836,16 +3800,16 @@ msgstr "供應商零件説明" msgid "Note" msgstr "備註" -#: company/models.py:837 part/models.py:2131 +#: company/models.py:837 part/models.py:2130 msgid "base cost" msgstr "基本費用" -#: company/models.py:838 part/models.py:2132 +#: company/models.py:838 part/models.py:2131 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低費用(例如庫存費)" #: company/models.py:845 order/serializers.py:793 stock/models.py:900 -#: stock/serializers.py:1611 +#: stock/serializers.py:1608 msgid "Packaging" msgstr "打包" @@ -3861,7 +3825,7 @@ msgstr "包裝數量" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "單包供應的總數量。為單個項目留空。" -#: company/models.py:872 part/models.py:2138 +#: company/models.py:872 part/models.py:2137 msgid "multiple" msgstr "多個" @@ -3885,15 +3849,15 @@ msgstr "上次更新可用性數據的日期" msgid "Supplier Price Break" msgstr "供應商批發價" -#: company/serializers.py:179 +#: company/serializers.py:176 msgid "Default currency used for this supplier" msgstr "此供應商使用的默認貨幣" -#: company/serializers.py:215 +#: company/serializers.py:212 msgid "Company Name" msgstr "公司名稱" -#: company/serializers.py:408 part/serializers.py:959 stock/serializers.py:478 +#: company/serializers.py:404 part/serializers.py:956 stock/serializers.py:478 msgid "In Stock" msgstr "有庫存" @@ -3905,7 +3869,7 @@ msgstr "自定義狀態密鑰" msgid "Additional status information for this item" msgstr "此項目的附加狀態信息" -#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:100 +#: generic/states/serializers.py:16 plugin/models.py:44 users/models.py:98 msgid "Key" msgstr "鍵" @@ -3933,6 +3897,10 @@ msgstr "" msgid "Invalid export format" msgstr "導出格式無效" +#: importer/models.py:64 +msgid "Data File" +msgstr "數據文件" + #: importer/models.py:65 msgid "Data file to import" msgstr "要導入的數據文件" @@ -4009,7 +3977,7 @@ msgstr "原始行數據" msgid "Errors" msgstr "錯誤" -#: importer/models.py:519 part/api.py:856 +#: importer/models.py:519 part/api.py:859 msgid "Valid" msgstr "有效" @@ -4429,7 +4397,7 @@ msgid "Quantity must be a positive number" msgstr "數量必須是正數" #: order/models.py:1118 order/models.py:2333 stock/models.py:922 -#: stock/models.py:923 stock/serializers.py:1348 +#: stock/models.py:923 stock/serializers.py:1345 #: templates/email/overdue_sales_order.html:16 msgid "Customer" msgstr "客户" @@ -4835,11 +4803,11 @@ msgstr "合併項目" msgid "Merge items with the same part, destination and target date into one line item" msgstr "將具有相同零件、目的地和目標日期的項目合併到一個行項目中" -#: order/serializers.py:645 part/serializers.py:601 +#: order/serializers.py:645 part/serializers.py:598 msgid "SKU" msgstr "庫存量單位" -#: order/serializers.py:652 part/models.py:1048 part/serializers.py:396 +#: order/serializers.py:652 part/models.py:1047 part/serializers.py:393 msgid "Internal Part Number" msgstr "內部零件編號" @@ -4879,7 +4847,7 @@ msgstr "為收到的物品選擇目的地位置" msgid "Enter batch code for incoming stock items" msgstr "輸入入庫項目的批號" -#: order/serializers.py:771 stock/models.py:1001 users/models.py:124 +#: order/serializers.py:771 stock/models.py:1001 users/models.py:122 msgid "Expiry Date" msgstr "有效期至" @@ -4979,7 +4947,7 @@ msgstr "以下序列號不可用" msgid "Return order line item" msgstr "退貨訂單行項目" -#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1602 +#: order/serializers.py:1959 stock/serializers.py:988 stock/serializers.py:1599 msgid "Stock item status code" msgstr "庫存項狀態代碼" @@ -5061,7 +5029,7 @@ msgstr "已加星標" msgid "Filter by starred categories" msgstr "按星標類別篩選" -#: part/api.py:122 stock/api.py:261 +#: part/api.py:122 stock/api.py:254 msgid "Depth" msgstr "深度" @@ -5069,7 +5037,7 @@ msgstr "深度" msgid "Filter by category depth" msgstr "按類別深度篩選" -#: part/api.py:140 stock/api.py:279 +#: part/api.py:140 stock/api.py:272 msgid "Top Level" msgstr "頂級" @@ -5077,7 +5045,7 @@ msgstr "頂級" msgid "Filter by top-level categories" msgstr "按頂級類別篩選" -#: part/api.py:155 stock/api.py:294 +#: part/api.py:155 stock/api.py:287 msgid "Cascade" msgstr "級聯" @@ -5105,1250 +5073,1190 @@ msgstr "排除指定類別下的子類別" msgid "Has Results" msgstr "有結果" -#: part/api.py:603 +#: part/api.py:606 msgid "Incoming Purchase Order" msgstr "收到的採購訂單" -#: part/api.py:617 +#: part/api.py:620 msgid "Outgoing Sales Order" msgstr "外發銷售訂單" -#: part/api.py:629 +#: part/api.py:632 msgid "Stock produced by Build Order" msgstr "建造生產訂單產生的庫存" -#: part/api.py:711 +#: part/api.py:714 msgid "Stock required for Build Order" msgstr "生產訂單所需的庫存" -#: part/api.py:857 +#: part/api.py:860 msgid "Validate entire Bill of Materials" msgstr "驗證整個物料清單" -#: part/api.py:863 +#: part/api.py:866 msgid "This option must be selected" msgstr "必須選擇此項" -#: part/api.py:899 +#: part/api.py:902 msgid "Is Variant" msgstr "" -#: part/api.py:907 +#: part/api.py:910 msgid "Is Revision" msgstr "是修訂版本" -#: part/api.py:917 +#: part/api.py:920 msgid "Has Revisions" msgstr "有修訂版本" -#: part/api.py:1108 +#: part/api.py:1111 msgid "BOM Valid" msgstr "物料清單合規" -#: part/api.py:1770 +#: part/api.py:1773 msgid "Assembly part is testable" msgstr "裝配部份是可測試的" -#: part/api.py:1779 +#: part/api.py:1782 msgid "Component part is testable" msgstr "組件部份是可測試的" -#: part/api.py:1830 +#: part/api.py:1833 msgid "Uses" msgstr "使用" -#: part/models.py:90 part/models.py:4073 +#: part/models.py:89 part/models.py:4078 msgid "Part Category" msgstr "零件類別" -#: part/models.py:91 users/models.py:202 +#: part/models.py:90 users/models.py:200 msgid "Part Categories" msgstr "零件類別" -#: part/models.py:109 part/models.py:1092 +#: part/models.py:108 part/models.py:1091 msgid "Default Location" msgstr "默認位置" -#: part/models.py:110 +#: part/models.py:109 msgid "Default location for parts in this category" msgstr "此類別零件的默認庫存地點" -#: part/models.py:115 stock/models.py:193 +#: part/models.py:114 stock/models.py:193 msgid "Structural" msgstr "結構性" -#: part/models.py:117 +#: part/models.py:116 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "零件可能無法直接分配到結構類別,但可以分配到子類別。" -#: part/models.py:126 +#: part/models.py:125 msgid "Default keywords" msgstr "默認關鍵字" -#: part/models.py:127 +#: part/models.py:126 msgid "Default keywords for parts in this category" msgstr "此類別零件的默認關鍵字" -#: part/models.py:133 stock/models.py:96 stock/models.py:175 +#: part/models.py:132 stock/models.py:96 stock/models.py:175 msgid "Icon" msgstr "圖標" -#: part/models.py:134 part/serializers.py:142 part/serializers.py:160 +#: part/models.py:133 part/serializers.py:139 part/serializers.py:157 #: stock/models.py:176 msgid "Icon (optional)" msgstr "圖標(可選)" -#: part/models.py:178 +#: part/models.py:177 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "您不能使這個零件類別結構化,因為有些零件已經分配給了它!" -#: part/models.py:418 part/serializers.py:129 part/serializers.py:331 -#: part/serializers.py:468 users/models.py:203 +#: part/models.py:417 part/serializers.py:126 part/serializers.py:328 +#: part/serializers.py:465 users/models.py:201 msgid "Parts" msgstr "零件" -#: part/models.py:470 +#: part/models.py:469 msgid "Cannot delete this part as it is locked" msgstr "無法刪除這個零件,因為它已被鎖定" -#: part/models.py:473 +#: part/models.py:472 msgid "Cannot delete this part as it is still active" msgstr "無法刪除這個零件,因為它仍然處於活動狀態" -#: part/models.py:478 +#: part/models.py:477 msgid "Cannot delete this part as it is used in an assembly" msgstr "無法刪除這個零件,因為它被使用在了裝配中" -#: part/models.py:516 +#: part/models.py:515 msgid "Invalid choice for parent part" msgstr "無效的上級零件選擇" -#: part/models.py:564 part/models.py:571 +#: part/models.py:563 part/models.py:570 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "零件 \"{self}\" 不能用在 \"{parent}\" 的物料清單 (遞歸)" -#: part/models.py:583 +#: part/models.py:582 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "零件 \"{parent}\" 被使用在了 \"{self}\" 的物料清單 (遞歸)" -#: part/models.py:650 +#: part/models.py:649 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "內部零件號必須匹配正則表達式 {pattern}" -#: part/models.py:658 +#: part/models.py:657 msgid "Part cannot be a revision of itself" msgstr "零件不能是對自身的修訂" -#: part/models.py:665 +#: part/models.py:664 msgid "Cannot make a revision of a part which is already a revision" msgstr "無法對已經是修訂版本的零件進行修訂" -#: part/models.py:672 +#: part/models.py:671 msgid "Revision code must be specified" msgstr "必須指定修訂代碼" -#: part/models.py:679 +#: part/models.py:678 msgid "Revisions are only allowed for assembly parts" msgstr "修訂僅對裝配零件允許" -#: part/models.py:686 +#: part/models.py:685 msgid "Cannot make a revision of a template part" msgstr "無法對模版零件進行修訂" -#: part/models.py:692 +#: part/models.py:691 msgid "Parent part must point to the same template" msgstr "上級零件必須指向相同的模版" -#: part/models.py:788 +#: part/models.py:787 msgid "Stock item with this serial number already exists" msgstr "該序列號庫存項己存在" -#: part/models.py:930 +#: part/models.py:929 msgid "Duplicate IPN not allowed in part settings" msgstr "在零件設置中不允許重複的內部零件號" -#: part/models.py:942 +#: part/models.py:941 msgid "Duplicate part revision already exists." msgstr "重複的零件修訂版本已經存在。" -#: part/models.py:951 +#: part/models.py:950 msgid "Part with this Name, IPN and Revision already exists." msgstr "有這個名字,內部零件號,和修訂版本的零件已經存在" -#: part/models.py:966 +#: part/models.py:965 msgid "Parts cannot be assigned to structural part categories!" msgstr "零件不能分配到結構性零件類別!" -#: part/models.py:998 part/models.py:4128 +#: part/models.py:997 msgid "Part name" msgstr "零件名稱" -#: part/models.py:1003 +#: part/models.py:1002 msgid "Is Template" msgstr "是模板" -#: part/models.py:1004 +#: part/models.py:1003 msgid "Is this part a template part?" msgstr "這個零件是一個模版零件嗎?" -#: part/models.py:1014 +#: part/models.py:1013 msgid "Is this part a variant of another part?" msgstr "這個零件是另一零件的變體嗎?" -#: part/models.py:1015 +#: part/models.py:1014 msgid "Variant Of" msgstr "變體" -#: part/models.py:1022 +#: part/models.py:1021 msgid "Part description (optional)" msgstr "零件描述(可選)" -#: part/models.py:1029 +#: part/models.py:1028 msgid "Keywords" msgstr "關鍵詞" -#: part/models.py:1030 +#: part/models.py:1029 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索結果可見性的零件關鍵字" -#: part/models.py:1040 +#: part/models.py:1039 msgid "Part category" msgstr "零件類別" -#: part/models.py:1047 part/serializers.py:948 +#: part/models.py:1046 part/serializers.py:945 #: report/templates/report/inventree_stock_location_report.html:103 msgid "IPN" msgstr "內部零件號 IPN" -#: part/models.py:1055 +#: part/models.py:1054 msgid "Part revision or version number" msgstr "零件修訂版本或版本號" -#: part/models.py:1056 report/models.py:177 +#: part/models.py:1055 report/models.py:177 msgid "Revision" msgstr "版本" -#: part/models.py:1065 +#: part/models.py:1064 msgid "Is this part a revision of another part?" msgstr "這零件是另一零件的修訂版本嗎?" -#: part/models.py:1066 +#: part/models.py:1065 msgid "Revision Of" msgstr "修訂版本" -#: part/models.py:1090 +#: part/models.py:1089 msgid "Where is this item normally stored?" msgstr "該物品通常存放在哪裏?" -#: part/models.py:1136 +#: part/models.py:1135 msgid "Default Supplier" msgstr "默認供應商" -#: part/models.py:1137 +#: part/models.py:1136 msgid "Default supplier part" msgstr "默認供應商零件" -#: part/models.py:1144 +#: part/models.py:1143 msgid "Default Expiry" msgstr "默認到期" -#: part/models.py:1145 +#: part/models.py:1144 msgid "Expiry time (in days) for stock items of this part" msgstr "此零件庫存項的過期時間 (天)" -#: part/models.py:1153 part/serializers.py:975 +#: part/models.py:1152 part/serializers.py:972 msgid "Minimum Stock" msgstr "最低庫存" -#: part/models.py:1154 +#: part/models.py:1153 msgid "Minimum allowed stock level" msgstr "允許的最小庫存量" -#: part/models.py:1163 +#: part/models.py:1162 msgid "Units of measure for this part" msgstr "此零件的計量單位" -#: part/models.py:1170 +#: part/models.py:1169 msgid "Can this part be built from other parts?" msgstr "這個零件可由其他零件加工而成嗎?" -#: part/models.py:1176 +#: part/models.py:1175 msgid "Can this part be used to build other parts?" msgstr "這個零件可用於創建其他零件嗎?" -#: part/models.py:1182 +#: part/models.py:1181 msgid "Does this part have tracking for unique items?" msgstr "此零件是否有唯一物品的追蹤功能" -#: part/models.py:1188 +#: part/models.py:1187 msgid "Can this part have test results recorded against it?" msgstr "這一部分能否記錄到測試結果?" -#: part/models.py:1194 +#: part/models.py:1193 msgid "Can this part be purchased from external suppliers?" msgstr "這個零件可從外部供應商購買嗎?" -#: part/models.py:1200 +#: part/models.py:1199 msgid "Can this part be sold to customers?" msgstr "此零件可以銷售給客户嗎?" -#: part/models.py:1204 +#: part/models.py:1203 msgid "Is this part active?" msgstr "這個零件是否已激活?" -#: part/models.py:1210 +#: part/models.py:1209 msgid "Locked parts cannot be edited" msgstr "無法編輯鎖定的零件" -#: part/models.py:1216 +#: part/models.py:1215 msgid "Is this a virtual part, such as a software product or license?" msgstr "這是一個虛擬零件,例如一個軟件產品或許可證嗎?" -#: part/models.py:1222 +#: part/models.py:1221 msgid "BOM checksum" msgstr "物料清單校驗和" -#: part/models.py:1223 +#: part/models.py:1222 msgid "Stored BOM checksum" msgstr "保存的物料清單校驗和" -#: part/models.py:1231 +#: part/models.py:1230 msgid "BOM checked by" msgstr "物料清單檢查人" -#: part/models.py:1236 +#: part/models.py:1235 msgid "BOM checked date" msgstr "物料清單檢查日期" -#: part/models.py:1252 +#: part/models.py:1251 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1262 +#: part/models.py:1261 msgid "Owner responsible for this part" msgstr "此零件的負責人" -#: part/models.py:1267 +#: part/models.py:1266 msgid "Last Stocktake" msgstr "最近庫存盤點" -#: part/models.py:2139 +#: part/models.py:2138 msgid "Sell multiple" msgstr "出售多個" -#: part/models.py:3121 +#: part/models.py:3126 msgid "Currency used to cache pricing calculations" msgstr "用於緩存定價計算的貨幣" -#: part/models.py:3137 +#: part/models.py:3142 msgid "Minimum BOM Cost" msgstr "最低物料清單成本" -#: part/models.py:3138 +#: part/models.py:3143 msgid "Minimum cost of component parts" msgstr "元件的最低成本" -#: part/models.py:3144 +#: part/models.py:3149 msgid "Maximum BOM Cost" msgstr "物料清單的最高成本" -#: part/models.py:3145 +#: part/models.py:3150 msgid "Maximum cost of component parts" msgstr "元件的最高成本" -#: part/models.py:3151 +#: part/models.py:3156 msgid "Minimum Purchase Cost" msgstr "最低購買成本" -#: part/models.py:3152 +#: part/models.py:3157 msgid "Minimum historical purchase cost" msgstr "最高歷史購買成本" -#: part/models.py:3158 +#: part/models.py:3163 msgid "Maximum Purchase Cost" msgstr "最大購買成本" -#: part/models.py:3159 +#: part/models.py:3164 msgid "Maximum historical purchase cost" msgstr "最高歷史購買成本" -#: part/models.py:3165 +#: part/models.py:3170 msgid "Minimum Internal Price" msgstr "最低內部價格" -#: part/models.py:3166 +#: part/models.py:3171 msgid "Minimum cost based on internal price breaks" msgstr "基於內部批發價的最低成本" -#: part/models.py:3172 +#: part/models.py:3177 msgid "Maximum Internal Price" msgstr "最大內部價格" -#: part/models.py:3173 +#: part/models.py:3178 msgid "Maximum cost based on internal price breaks" msgstr "基於內部批發價的最高成本" -#: part/models.py:3179 +#: part/models.py:3184 msgid "Minimum Supplier Price" msgstr "供應商最低價格" -#: part/models.py:3180 +#: part/models.py:3185 msgid "Minimum price of part from external suppliers" msgstr "外部供應商零件的最低價格" -#: part/models.py:3186 +#: part/models.py:3191 msgid "Maximum Supplier Price" msgstr "供應商最高價格" -#: part/models.py:3187 +#: part/models.py:3192 msgid "Maximum price of part from external suppliers" msgstr "來自外部供應商的商零件的最高價格" -#: part/models.py:3193 +#: part/models.py:3198 msgid "Minimum Variant Cost" msgstr "最小變體成本" -#: part/models.py:3194 +#: part/models.py:3199 msgid "Calculated minimum cost of variant parts" msgstr "計算出的變體零件的最低成本" -#: part/models.py:3200 +#: part/models.py:3205 msgid "Maximum Variant Cost" msgstr "最大變體成本" -#: part/models.py:3201 +#: part/models.py:3206 msgid "Calculated maximum cost of variant parts" msgstr "計算出的變體零件的最大成本" -#: part/models.py:3207 part/models.py:3221 +#: part/models.py:3212 part/models.py:3226 msgid "Minimum Cost" msgstr "最低成本" -#: part/models.py:3208 +#: part/models.py:3213 msgid "Override minimum cost" msgstr "覆蓋最低成本" -#: part/models.py:3214 part/models.py:3228 +#: part/models.py:3219 part/models.py:3233 msgid "Maximum Cost" msgstr "最高成本" -#: part/models.py:3215 +#: part/models.py:3220 msgid "Override maximum cost" msgstr "覆蓋最大成本" -#: part/models.py:3222 +#: part/models.py:3227 msgid "Calculated overall minimum cost" msgstr "計算總最低成本" -#: part/models.py:3229 +#: part/models.py:3234 msgid "Calculated overall maximum cost" msgstr "計算總最大成本" -#: part/models.py:3235 +#: part/models.py:3240 msgid "Minimum Sale Price" msgstr "最低售出價格" -#: part/models.py:3236 +#: part/models.py:3241 msgid "Minimum sale price based on price breaks" msgstr "基於批發價的最低售出價格" -#: part/models.py:3242 +#: part/models.py:3247 msgid "Maximum Sale Price" msgstr "最高售出價格" -#: part/models.py:3243 +#: part/models.py:3248 msgid "Maximum sale price based on price breaks" msgstr "基於批發價的最大售出價格" -#: part/models.py:3249 +#: part/models.py:3254 msgid "Minimum Sale Cost" msgstr "最低銷售成本" -#: part/models.py:3250 +#: part/models.py:3255 msgid "Minimum historical sale price" msgstr "歷史最低售出價格" -#: part/models.py:3256 +#: part/models.py:3261 msgid "Maximum Sale Cost" msgstr "最高銷售成本" -#: part/models.py:3257 +#: part/models.py:3262 msgid "Maximum historical sale price" msgstr "歷史最高售出價格" -#: part/models.py:3276 +#: part/models.py:3281 msgid "Part for stocktake" msgstr "用於盤點的零件" -#: part/models.py:3281 +#: part/models.py:3286 msgid "Item Count" msgstr "物品數量" -#: part/models.py:3282 +#: part/models.py:3287 msgid "Number of individual stock entries at time of stocktake" msgstr "盤點時的個別庫存條目數" -#: part/models.py:3290 +#: part/models.py:3295 msgid "Total available stock at time of stocktake" msgstr "盤點時可用庫存總額" -#: part/models.py:3294 part/models.py:3377 part/serializers.py:262 +#: part/models.py:3299 part/models.py:3382 part/serializers.py:259 #: report/templates/report/inventree_test_report.html:106 msgid "Date" msgstr "日期" -#: part/models.py:3295 +#: part/models.py:3300 msgid "Date stocktake was performed" msgstr "進行盤點的日期" -#: part/models.py:3303 +#: part/models.py:3308 msgid "Additional notes" msgstr "附加註釋" -#: part/models.py:3313 +#: part/models.py:3318 msgid "User who performed this stocktake" msgstr "進行此盤點的用户" -#: part/models.py:3319 +#: part/models.py:3324 msgid "Minimum Stock Cost" msgstr "最低庫存成本" -#: part/models.py:3320 +#: part/models.py:3325 msgid "Estimated minimum cost of stock on hand" msgstr "現有存庫存最低成本估算" -#: part/models.py:3326 +#: part/models.py:3331 msgid "Maximum Stock Cost" msgstr "最高庫存成本" -#: part/models.py:3327 +#: part/models.py:3332 msgid "Estimated maximum cost of stock on hand" msgstr "目前庫存最高成本估算" -#: part/models.py:3383 +#: part/models.py:3388 msgid "Report" msgstr "報告" -#: part/models.py:3384 +#: part/models.py:3389 msgid "Stocktake report file (generated internally)" msgstr "盤點報告文件(內部生成)" -#: part/models.py:3389 +#: part/models.py:3394 msgid "Part Count" msgstr "零件計數" -#: part/models.py:3390 +#: part/models.py:3395 msgid "Number of parts covered by stocktake" msgstr "盤點涵蓋的零件數量" -#: part/models.py:3400 +#: part/models.py:3405 msgid "User who requested this stocktake report" msgstr "請求此盤點報告的用户" -#: part/models.py:3410 +#: part/models.py:3415 msgid "Part Sale Price Break" msgstr "零件售出價格折扣" -#: part/models.py:3522 +#: part/models.py:3527 msgid "Part Test Template" msgstr "零件測試模板" -#: part/models.py:3548 +#: part/models.py:3553 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "模板名稱無效 - 必須包含至少一個字母或者數字" -#: part/models.py:3569 part/models.py:3739 +#: part/models.py:3574 part/models.py:3744 msgid "Choices must be unique" msgstr "選擇必須是唯一的" -#: part/models.py:3580 +#: part/models.py:3585 msgid "Test templates can only be created for testable parts" msgstr "測試模板只能為可拆分的部件創建" -#: part/models.py:3591 +#: part/models.py:3596 msgid "Test template with the same key already exists for part" msgstr "零件已存在具有相同主鍵的測試模板" -#: part/models.py:3608 +#: part/models.py:3613 msgid "Test Name" msgstr "測試名" -#: part/models.py:3609 +#: part/models.py:3614 msgid "Enter a name for the test" msgstr "輸入測試的名稱" -#: part/models.py:3615 +#: part/models.py:3620 msgid "Test Key" msgstr "測試主鍵" -#: part/models.py:3616 +#: part/models.py:3621 msgid "Simplified key for the test" msgstr "簡化測試主鍵" -#: part/models.py:3623 +#: part/models.py:3628 msgid "Test Description" msgstr "測試説明" -#: part/models.py:3624 +#: part/models.py:3629 msgid "Enter description for this test" msgstr "輸入測試的描述" -#: part/models.py:3628 report/models.py:232 +#: part/models.py:3633 report/models.py:232 msgid "Enabled" msgstr "已啓用" -#: part/models.py:3628 +#: part/models.py:3633 msgid "Is this test enabled?" msgstr "此測試是否已啓用?" -#: part/models.py:3633 +#: part/models.py:3638 msgid "Required" msgstr "必須的" -#: part/models.py:3634 +#: part/models.py:3639 msgid "Is this test required to pass?" msgstr "需要此測試才能通過嗎?" -#: part/models.py:3639 +#: part/models.py:3644 msgid "Requires Value" msgstr "需要值" -#: part/models.py:3640 +#: part/models.py:3645 msgid "Does this test require a value when adding a test result?" msgstr "添加測試結果時是否需要一個值?" -#: part/models.py:3645 +#: part/models.py:3650 msgid "Requires Attachment" msgstr "需要附件" -#: part/models.py:3647 +#: part/models.py:3652 msgid "Does this test require a file attachment when adding a test result?" msgstr "添加測試結果時是否需要文件附件?" -#: part/models.py:3653 part/models.py:3801 +#: part/models.py:3658 part/models.py:3806 msgid "Choices" msgstr "選項" -#: part/models.py:3654 +#: part/models.py:3659 msgid "Valid choices for this test (comma-separated)" msgstr "此測試的有效選擇 (逗號分隔)" -#: part/models.py:3687 +#: part/models.py:3692 msgid "Part Parameter Template" msgstr "零件參數模板" -#: part/models.py:3714 +#: part/models.py:3719 msgid "Checkbox parameters cannot have units" msgstr "勾選框參數不能有單位" -#: part/models.py:3719 +#: part/models.py:3724 msgid "Checkbox parameters cannot have choices" msgstr "複選框參數不能有選項" -#: part/models.py:3756 +#: part/models.py:3761 msgid "Parameter template name must be unique" msgstr "參數模板名稱必須是唯一的" -#: part/models.py:3774 +#: part/models.py:3779 msgid "Parameter Name" msgstr "參數名稱" -#: part/models.py:3781 +#: part/models.py:3786 msgid "Physical units for this parameter" msgstr "此參數的物理單位" -#: part/models.py:3789 +#: part/models.py:3794 msgid "Parameter description" msgstr "參數説明" -#: part/models.py:3795 +#: part/models.py:3800 msgid "Checkbox" msgstr "勾選框" -#: part/models.py:3796 +#: part/models.py:3801 msgid "Is this parameter a checkbox?" msgstr "此參數是否為勾選框?" -#: part/models.py:3802 +#: part/models.py:3807 msgid "Valid choices for this parameter (comma-separated)" msgstr "此參數的有效選擇 (逗號分隔)" -#: part/models.py:3813 +#: part/models.py:3818 msgid "Selection list for this parameter" msgstr "" -#: part/models.py:3849 +#: part/models.py:3854 msgid "Part Parameter" msgstr "零件參數" -#: part/models.py:3875 +#: part/models.py:3880 msgid "Parameter cannot be modified - part is locked" msgstr "參數不能被修改 - 零件被鎖定" -#: part/models.py:3913 +#: part/models.py:3918 msgid "Invalid choice for parameter value" msgstr "無效的參數值選擇" -#: part/models.py:3964 +#: part/models.py:3969 msgid "Parent Part" msgstr "父零件" -#: part/models.py:3972 part/models.py:4080 part/models.py:4081 +#: part/models.py:3977 part/models.py:4085 part/models.py:4086 msgid "Parameter Template" msgstr "參數模板" -#: part/models.py:3978 +#: part/models.py:3983 msgid "Parameter Value" msgstr "參數值" -#: part/models.py:4028 +#: part/models.py:4033 msgid "Part Category Parameter Template" msgstr "零件類別參數模板" -#: part/models.py:4087 +#: part/models.py:4092 msgid "Default Value" msgstr "默認值" -#: part/models.py:4088 +#: part/models.py:4093 msgid "Default Parameter Value" msgstr "默認參數值" -#: part/models.py:4126 -msgid "Part ID or part name" -msgstr "零件ID或零件名稱" - -#: part/models.py:4127 part/stocktake.py:218 -msgid "Part ID" -msgstr "零件編號" - -#: part/models.py:4127 -msgid "Unique part ID value" -msgstr "唯一零件ID值" - -#: part/models.py:4129 -msgid "Part IPN" -msgstr "零件的內部零件號" - -#: part/models.py:4129 -msgid "Part IPN value" -msgstr "零件內部零件號" - -#: part/models.py:4130 -msgid "Level" -msgstr "級" - -#: part/models.py:4130 -msgid "BOM level" -msgstr "物料清單級別" - -#: part/models.py:4240 +#: part/models.py:4224 msgid "BOM item cannot be modified - assembly is locked" msgstr "物料清單項目不能被修改 - 裝配已鎖定" -#: part/models.py:4247 +#: part/models.py:4231 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "物料清單項目不能修改 - 變體裝配已鎖定" -#: part/models.py:4257 +#: part/models.py:4241 msgid "Select parent part" msgstr "選擇父零件" -#: part/models.py:4267 +#: part/models.py:4251 msgid "Sub part" msgstr "子零件" -#: part/models.py:4268 +#: part/models.py:4252 msgid "Select part to be used in BOM" msgstr "選擇要用於物料清單的零件" -#: part/models.py:4279 +#: part/models.py:4263 msgid "BOM quantity for this BOM item" msgstr "此物料清單項目的數量" -#: part/models.py:4285 +#: part/models.py:4269 msgid "This BOM item is optional" msgstr "此物料清單項目是可選的" -#: part/models.py:4291 +#: part/models.py:4275 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "這個物料清單項目是耗材 (它沒有在生產訂單中被追蹤)" -#: part/models.py:4298 +#: part/models.py:4282 msgid "Overage" msgstr "超量" -#: part/models.py:4299 +#: part/models.py:4283 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "估計生產物浪費量(絕對值或百分比)" -#: part/models.py:4306 +#: part/models.py:4290 msgid "BOM item reference" msgstr "物料清單項目引用" -#: part/models.py:4314 +#: part/models.py:4298 msgid "BOM item notes" msgstr "物料清單項目註釋" -#: part/models.py:4320 +#: part/models.py:4304 msgid "Checksum" msgstr "校驗和" -#: part/models.py:4321 +#: part/models.py:4305 msgid "BOM line checksum" msgstr "物料清單行校驗和" -#: part/models.py:4326 +#: part/models.py:4310 msgid "Validated" msgstr "已驗證" -#: part/models.py:4327 +#: part/models.py:4311 msgid "This BOM item has been validated" msgstr "此物料清單項目已驗證" -#: part/models.py:4332 +#: part/models.py:4316 msgid "Gets inherited" msgstr "獲取繼承的" -#: part/models.py:4333 +#: part/models.py:4317 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "此物料清單項目是由物料清單繼承的變體零件" -#: part/models.py:4339 +#: part/models.py:4323 msgid "Stock items for variant parts can be used for this BOM item" msgstr "變體零件的庫存項可以用於此物料清單項目" -#: part/models.py:4424 stock/models.py:769 +#: part/models.py:4408 stock/models.py:769 msgid "Quantity must be integer value for trackable parts" msgstr "可追蹤零件的數量必須是整數" -#: part/models.py:4434 part/models.py:4436 +#: part/models.py:4418 part/models.py:4420 msgid "Sub part must be specified" msgstr "必須指定子零件" -#: part/models.py:4581 +#: part/models.py:4565 msgid "BOM Item Substitute" msgstr "物料清單項目替代品" -#: part/models.py:4602 +#: part/models.py:4586 msgid "Substitute part cannot be the same as the master part" msgstr "替代品零件不能與主零件相同" -#: part/models.py:4615 +#: part/models.py:4599 msgid "Parent BOM item" msgstr "上級物料清單項目" -#: part/models.py:4623 +#: part/models.py:4607 msgid "Substitute part" msgstr "替代品零件" -#: part/models.py:4639 +#: part/models.py:4623 msgid "Part 1" msgstr "零件 1" -#: part/models.py:4647 +#: part/models.py:4631 msgid "Part 2" msgstr "零件2" -#: part/models.py:4648 +#: part/models.py:4632 msgid "Select Related Part" msgstr "選擇相關的零件" -#: part/models.py:4655 +#: part/models.py:4639 msgid "Note for this relationship" msgstr "" -#: part/models.py:4674 +#: part/models.py:4658 msgid "Part relationship cannot be created between a part and itself" msgstr "零件關係不能在零件和自身之間創建" -#: part/models.py:4679 +#: part/models.py:4663 msgid "Duplicate relationship already exists" msgstr "複製關係已經存在" -#: part/serializers.py:123 +#: part/serializers.py:122 msgid "Parent Category" msgstr "上級類別" -#: part/serializers.py:124 +#: part/serializers.py:123 msgid "Parent part category" msgstr "上級零件類別" -#: part/serializers.py:131 part/serializers.py:157 +#: part/serializers.py:128 part/serializers.py:154 msgid "Subcategories" msgstr "子類別" -#: part/serializers.py:196 +#: part/serializers.py:193 msgid "Results" msgstr "結果" -#: part/serializers.py:197 +#: part/serializers.py:194 msgid "Number of results recorded against this template" msgstr "根據該模板記錄的結果數量" -#: part/serializers.py:224 part/serializers.py:242 stock/serializers.py:656 +#: part/serializers.py:221 part/serializers.py:239 stock/serializers.py:656 msgid "Purchase currency of this stock item" msgstr "購買此庫存項的貨幣" -#: part/serializers.py:267 +#: part/serializers.py:264 msgid "Speculative Quantity" msgstr "投機數量" -#: part/serializers.py:276 +#: part/serializers.py:273 msgid "Model ID" msgstr "型號ID" -#: part/serializers.py:302 +#: part/serializers.py:299 msgid "File is not an image" msgstr "" -#: part/serializers.py:332 +#: part/serializers.py:329 msgid "Number of parts using this template" msgstr "使用此模板的零件數" -#: part/serializers.py:474 +#: part/serializers.py:471 msgid "No parts selected" msgstr "沒有選定零件" -#: part/serializers.py:484 +#: part/serializers.py:481 msgid "Select category" msgstr "選擇類別" -#: part/serializers.py:519 +#: part/serializers.py:516 msgid "Original Part" msgstr "原始零件" -#: part/serializers.py:520 +#: part/serializers.py:517 msgid "Select original part to duplicate" msgstr "選擇要複製的原始零件" -#: part/serializers.py:525 +#: part/serializers.py:522 msgid "Copy Image" msgstr "複製圖片" -#: part/serializers.py:526 +#: part/serializers.py:523 msgid "Copy image from original part" msgstr "從原零件複製圖片" -#: part/serializers.py:532 +#: part/serializers.py:529 msgid "Copy BOM" msgstr "複製物料清單" -#: part/serializers.py:533 +#: part/serializers.py:530 msgid "Copy bill of materials from original part" msgstr "從原始零件複製材料清單" -#: part/serializers.py:539 +#: part/serializers.py:536 msgid "Copy Parameters" msgstr "複製參數" -#: part/serializers.py:540 +#: part/serializers.py:537 msgid "Copy parameter data from original part" msgstr "從原始零件複製參數數據" -#: part/serializers.py:546 +#: part/serializers.py:543 msgid "Copy Notes" msgstr "複製備註" -#: part/serializers.py:547 +#: part/serializers.py:544 msgid "Copy notes from original part" msgstr "從原始零件複製備註" -#: part/serializers.py:565 +#: part/serializers.py:562 msgid "Initial Stock Quantity" msgstr "初始化庫存數量" -#: part/serializers.py:567 +#: part/serializers.py:564 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "指定此零件的初始庫存數量。如果數量為零,則不添加任何庫存。" -#: part/serializers.py:574 +#: part/serializers.py:571 msgid "Initial Stock Location" msgstr "初始化庫存地點" -#: part/serializers.py:575 +#: part/serializers.py:572 msgid "Specify initial stock location for this Part" msgstr "初始化指定此零件的庫存地點" -#: part/serializers.py:592 +#: part/serializers.py:589 msgid "Select supplier (or leave blank to skip)" msgstr "選擇供應商(或為空以跳過)" -#: part/serializers.py:608 +#: part/serializers.py:605 msgid "Select manufacturer (or leave blank to skip)" msgstr "選擇製造商(或為空)" -#: part/serializers.py:618 +#: part/serializers.py:615 msgid "Manufacturer part number" msgstr "製造商零件號" -#: part/serializers.py:625 +#: part/serializers.py:622 msgid "Selected company is not a valid supplier" msgstr "所選公司不是一個有效的供應商" -#: part/serializers.py:634 +#: part/serializers.py:631 msgid "Selected company is not a valid manufacturer" msgstr "所選公司不是一個有效的製造商" -#: part/serializers.py:645 +#: part/serializers.py:642 msgid "Manufacturer part matching this MPN already exists" msgstr "與此製造商零件編號 (MPN) 的相匹配的製造商零件已存在" -#: part/serializers.py:652 +#: part/serializers.py:649 msgid "Supplier part matching this SKU already exists" msgstr "匹配此庫存單位 (SKU) 的供應商零件已存在" -#: part/serializers.py:933 part/stocktake.py:222 +#: part/serializers.py:930 part/stocktake.py:222 msgid "Category Name" msgstr "類別名稱" -#: part/serializers.py:958 +#: part/serializers.py:955 msgid "Building" msgstr "正在生產" -#: part/serializers.py:963 part/stocktake.py:223 stock/serializers.py:1030 -#: stock/serializers.py:1211 users/models.py:206 +#: part/serializers.py:960 part/stocktake.py:223 stock/serializers.py:1030 +#: stock/serializers.py:1208 users/models.py:204 msgid "Stock Items" msgstr "庫存項" -#: part/serializers.py:964 +#: part/serializers.py:961 msgid "Revisions" msgstr "修訂" -#: part/serializers.py:965 +#: part/serializers.py:962 msgid "Suppliers" msgstr "供應商" -#: part/serializers.py:966 templates/email/low_stock_notification.html:16 +#: part/serializers.py:963 templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "庫存總量" -#: part/serializers.py:969 +#: part/serializers.py:966 msgid "Unallocated Stock" msgstr "未分配的庫存" -#: part/serializers.py:972 +#: part/serializers.py:969 msgid "Variant Stock" msgstr "變體庫存" -#: part/serializers.py:1004 +#: part/serializers.py:1001 msgid "Duplicate Part" msgstr "重複零件" -#: part/serializers.py:1005 +#: part/serializers.py:1002 msgid "Copy initial data from another Part" msgstr "從另一個零件複製初始數據" -#: part/serializers.py:1011 +#: part/serializers.py:1008 msgid "Initial Stock" msgstr "初始庫存" -#: part/serializers.py:1012 +#: part/serializers.py:1009 msgid "Create Part with initial stock quantity" msgstr "創建具有初始庫存數量的零件" -#: part/serializers.py:1018 +#: part/serializers.py:1015 msgid "Supplier Information" msgstr "供應商信息" -#: part/serializers.py:1019 +#: part/serializers.py:1016 msgid "Add initial supplier information for this part" msgstr "添加此零件的初始供應商信息" -#: part/serializers.py:1027 +#: part/serializers.py:1024 msgid "Copy Category Parameters" msgstr "複製類別參數" -#: part/serializers.py:1028 +#: part/serializers.py:1025 msgid "Copy parameter templates from selected part category" msgstr "從選擇的零件複製參數模版" -#: part/serializers.py:1033 +#: part/serializers.py:1030 msgid "Existing Image" msgstr "現有的圖片" -#: part/serializers.py:1034 +#: part/serializers.py:1031 msgid "Filename of an existing part image" msgstr "現有零件圖片的文件名" -#: part/serializers.py:1051 +#: part/serializers.py:1048 msgid "Image file does not exist" msgstr "圖片不存在" -#: part/serializers.py:1259 +#: part/serializers.py:1256 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "限制盤點報告到某個特定零件以及任何變體零件" -#: part/serializers.py:1269 +#: part/serializers.py:1266 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "限制盤點報告到某個特定零件類別以及任何子類別" -#: part/serializers.py:1279 +#: part/serializers.py:1276 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "限制盤點報告到某個特定零件庫存地點以及任何子位置" -#: part/serializers.py:1285 +#: part/serializers.py:1282 msgid "Exclude External Stock" msgstr "排除外部庫存" -#: part/serializers.py:1286 +#: part/serializers.py:1283 msgid "Exclude stock items in external locations" msgstr "排除外部位置的庫存項" -#: part/serializers.py:1291 +#: part/serializers.py:1288 msgid "Generate Report" msgstr "生成報告" -#: part/serializers.py:1292 +#: part/serializers.py:1289 msgid "Generate report file containing calculated stocktake data" msgstr "生成包含計算出來的盤點數據的報告文件" -#: part/serializers.py:1297 +#: part/serializers.py:1294 msgid "Update Parts" msgstr "更新零件" -#: part/serializers.py:1298 +#: part/serializers.py:1295 msgid "Update specified parts with calculated stocktake data" msgstr "使用計算出的盤點數據更新指定零件" -#: part/serializers.py:1306 +#: part/serializers.py:1303 msgid "Stocktake functionality is not enabled" msgstr "盤點功能未啓用" -#: part/serializers.py:1311 +#: part/serializers.py:1308 msgid "Background worker check failed" msgstr "後台執行器檢查失敗" -#: part/serializers.py:1412 +#: part/serializers.py:1409 msgid "Minimum Price" msgstr "最低價格" -#: part/serializers.py:1413 +#: part/serializers.py:1410 msgid "Override calculated value for minimum price" msgstr "覆蓋已計算的最低價格值" -#: part/serializers.py:1420 +#: part/serializers.py:1417 msgid "Minimum price currency" msgstr "最低價格貨幣" -#: part/serializers.py:1427 +#: part/serializers.py:1424 msgid "Maximum Price" msgstr "最高價格" -#: part/serializers.py:1428 +#: part/serializers.py:1425 msgid "Override calculated value for maximum price" msgstr "覆蓋已計算的最高價格值" -#: part/serializers.py:1435 +#: part/serializers.py:1432 msgid "Maximum price currency" msgstr "最高價格貨幣" -#: part/serializers.py:1464 +#: part/serializers.py:1461 msgid "Update" msgstr "更新" -#: part/serializers.py:1465 +#: part/serializers.py:1462 msgid "Update pricing for this part" msgstr "更新這個零件的價格" -#: part/serializers.py:1488 +#: part/serializers.py:1485 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "無法將所提供的貨幣轉換為 {default_currency}" -#: part/serializers.py:1495 +#: part/serializers.py:1492 msgid "Minimum price must not be greater than maximum price" msgstr "最低價格不能高於最高價格。" -#: part/serializers.py:1498 +#: part/serializers.py:1495 msgid "Maximum price must not be less than minimum price" msgstr "最高價格不能低於最低價格" -#: part/serializers.py:1646 +#: part/serializers.py:1643 msgid "Select the parent assembly" msgstr "選擇父裝配" -#: part/serializers.py:1658 +#: part/serializers.py:1655 msgid "Select the component part" msgstr "選擇零部件" -#: part/serializers.py:1669 +#: part/serializers.py:1666 msgid "Can Build" msgstr "可以創建" -#: part/serializers.py:1891 +#: part/serializers.py:1888 msgid "Select part to copy BOM from" msgstr "選擇要複製物料清單的零件" -#: part/serializers.py:1899 +#: part/serializers.py:1896 msgid "Remove Existing Data" msgstr "移除現有數據" -#: part/serializers.py:1900 +#: part/serializers.py:1897 msgid "Remove existing BOM items before copying" msgstr "複製前刪除現有的物料清單項目" -#: part/serializers.py:1905 +#: part/serializers.py:1902 msgid "Include Inherited" msgstr "包含繼承的" -#: part/serializers.py:1906 +#: part/serializers.py:1903 msgid "Include BOM items which are inherited from templated parts" msgstr "包含從模板零件繼承的物料清單項目" -#: part/serializers.py:1911 +#: part/serializers.py:1908 msgid "Skip Invalid Rows" msgstr "跳過無效行" -#: part/serializers.py:1912 +#: part/serializers.py:1909 msgid "Enable this option to skip invalid rows" msgstr "啓用此選項以跳過無效行" -#: part/serializers.py:1917 +#: part/serializers.py:1914 msgid "Copy Substitute Parts" msgstr "複製替代品零件" -#: part/serializers.py:1918 +#: part/serializers.py:1915 msgid "Copy substitute parts when duplicate BOM items" msgstr "複製物料清單項目時複製替代品零件" -#: part/serializers.py:1955 -msgid "Clear Existing BOM" -msgstr "清除現有的物料清單" - -#: part/serializers.py:1956 -msgid "Delete existing BOM items before uploading" -msgstr "上傳前刪除現有的物料清單項目" - -#: part/serializers.py:1988 -msgid "No part column specified" -msgstr "未指定零件列" - -#: part/serializers.py:2032 -msgid "Multiple matching parts found" -msgstr "找到多個匹配的零件。" - -#: part/serializers.py:2035 -msgid "No matching part found" -msgstr "沒有找到匹配的零件" - -#: part/serializers.py:2037 -msgid "Part is not designated as a component" -msgstr "零件未指定為元件" - -#: part/serializers.py:2046 -msgid "Quantity not provided" -msgstr "未提供數量" - -#: part/serializers.py:2054 -msgid "Invalid quantity" -msgstr "無效的數量" - -#: part/serializers.py:2077 -msgid "At least one BOM item is required" -msgstr "至少需要一個物料清單項目" +#: part/stocktake.py:218 +msgid "Part ID" +msgstr "零件編號" #: part/stocktake.py:220 msgid "Part Description" @@ -6407,7 +6315,7 @@ msgstr "未找到匹配條形碼數據" msgid "Match found for barcode data" msgstr "找到匹配條形碼數據" -#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:73 +#: plugin/base/barcodes/api.py:252 plugin/base/barcodes/serializers.py:77 msgid "Model is not supported" msgstr "不支持模型" @@ -6504,75 +6412,75 @@ msgstr "已收到採購訂單行項目" msgid "Failed to receive line item" msgstr "" -#: plugin/base/barcodes/serializers.py:49 +#: plugin/base/barcodes/serializers.py:53 msgid "Scanned barcode data" msgstr "已掃描的條形碼數據" -#: plugin/base/barcodes/serializers.py:58 +#: plugin/base/barcodes/serializers.py:62 msgid "Model name to generate barcode for" msgstr "要生成條形碼的模型名稱" -#: plugin/base/barcodes/serializers.py:63 +#: plugin/base/barcodes/serializers.py:67 msgid "Primary key of model object to generate barcode for" msgstr "要生成條形碼的模型對象的主鍵" -#: plugin/base/barcodes/serializers.py:133 +#: plugin/base/barcodes/serializers.py:137 msgid "Purchase Order to allocate items against" msgstr "根據採購訂單以分配項目" -#: plugin/base/barcodes/serializers.py:139 -msgid "Purchase order is not pending" -msgstr "採購訂單未處理" +#: plugin/base/barcodes/serializers.py:143 +msgid "Purchase order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:157 +#: plugin/base/barcodes/serializers.py:161 msgid "Supplier to receive items from" msgstr "" -#: plugin/base/barcodes/serializers.py:164 +#: plugin/base/barcodes/serializers.py:168 msgid "PurchaseOrder to receive items against" msgstr "根據採購訂單以接收項目" -#: plugin/base/barcodes/serializers.py:170 +#: plugin/base/barcodes/serializers.py:174 msgid "Purchase order has not been placed" msgstr "採購訂單尚未提交" -#: plugin/base/barcodes/serializers.py:178 +#: plugin/base/barcodes/serializers.py:182 msgid "Location to receive items into" msgstr "項目接收地點" -#: plugin/base/barcodes/serializers.py:184 +#: plugin/base/barcodes/serializers.py:188 msgid "Cannot select a structural location" msgstr "無法選擇一個結構性位置" -#: plugin/base/barcodes/serializers.py:192 +#: plugin/base/barcodes/serializers.py:196 msgid "Purchase order line item to receive items against" msgstr "" -#: plugin/base/barcodes/serializers.py:198 +#: plugin/base/barcodes/serializers.py:202 msgid "Automatically allocate stock items to the purchase order" msgstr "" -#: plugin/base/barcodes/serializers.py:211 +#: plugin/base/barcodes/serializers.py:215 msgid "Sales Order to allocate items against" msgstr "根據銷售訂單以分配項目" -#: plugin/base/barcodes/serializers.py:217 -msgid "Sales order is not pending" -msgstr "銷售訂單未掛起" +#: plugin/base/barcodes/serializers.py:221 +msgid "Sales order is not open" +msgstr "" -#: plugin/base/barcodes/serializers.py:225 +#: plugin/base/barcodes/serializers.py:229 msgid "Sales order line item to allocate items against" msgstr "根據銷售訂單行項目分配項目" -#: plugin/base/barcodes/serializers.py:232 +#: plugin/base/barcodes/serializers.py:236 msgid "Sales order shipment to allocate items against" msgstr "根據銷售訂單配送分配項目" -#: plugin/base/barcodes/serializers.py:238 +#: plugin/base/barcodes/serializers.py:242 msgid "Shipment has already been delivered" msgstr "已交付" -#: plugin/base/barcodes/serializers.py:243 +#: plugin/base/barcodes/serializers.py:247 msgid "Quantity to allocate" msgstr "待分配數" @@ -6637,7 +6545,7 @@ msgid "Provides native support for barcodes" msgstr "提供條形碼本地支持" #: plugin/builtin/barcodes/inventree_barcode.py:30 -#: plugin/builtin/integration/core_notifications.py:35 +#: plugin/builtin/integration/core_notifications.py:33 #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 @@ -6671,41 +6579,41 @@ msgstr "短條形碼前綴" msgid "Customize the prefix used for short barcodes, may be useful for environments with multiple InvenTree instances" msgstr "自定義用於短條形碼的前綴,可能對有多個InvenTree實例的環境有用。" -#: plugin/builtin/integration/core_notifications.py:34 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "Inventree 通知" -#: plugin/builtin/integration/core_notifications.py:36 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notification methods" msgstr "集成的輸出通知方法" -#: plugin/builtin/integration/core_notifications.py:41 -#: plugin/builtin/integration/core_notifications.py:80 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:78 msgid "Enable email notifications" msgstr "啓用電子郵件通知" -#: plugin/builtin/integration/core_notifications.py:42 -#: plugin/builtin/integration/core_notifications.py:81 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:79 msgid "Allow sending of emails for event notifications" msgstr "允許發送事件通知郵件" -#: plugin/builtin/integration/core_notifications.py:47 +#: plugin/builtin/integration/core_notifications.py:45 msgid "Enable slack notifications" msgstr "啓用slack通知" -#: plugin/builtin/integration/core_notifications.py:49 +#: plugin/builtin/integration/core_notifications.py:47 msgid "Allow sending of slack channel messages for event notifications" msgstr "允許發送事件通知的 slack 頻道消息" -#: plugin/builtin/integration/core_notifications.py:55 +#: plugin/builtin/integration/core_notifications.py:53 msgid "Slack incoming webhook url" msgstr "Slack傳入Webhook url" -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:54 msgid "URL that is used to send messages to a slack channel" msgstr "用於發送消息到slack頻道的 URL" -#: plugin/builtin/integration/core_notifications.py:166 +#: plugin/builtin/integration/core_notifications.py:164 msgid "Open link" msgstr "打開鏈接" @@ -6936,7 +6844,7 @@ msgstr "內置插件" msgid "Package Plugin" msgstr "軟件包插件" -#: plugin/models.py:262 report/models.py:679 +#: plugin/models.py:262 report/models.py:677 msgid "Plugin" msgstr "插件" @@ -7155,7 +7063,7 @@ msgstr "刪除配置" msgid "Delete the plugin configuration from the database" msgstr "從數據庫中刪除插件配置" -#: report/api.py:46 report/models.py:643 report/serializers.py:99 +#: report/api.py:46 report/models.py:641 report/serializers.py:99 #: report/serializers.py:149 msgid "Items" msgstr "項目" @@ -7281,67 +7189,67 @@ msgstr "高度 [mm]" msgid "Label height, specified in mm" msgstr "標籤高度,以毫米為單位。" -#: report/models.py:612 +#: report/models.py:610 msgid "Error printing labels" msgstr "" -#: report/models.py:643 +#: report/models.py:641 msgid "Number of items to process" msgstr "要處理的項目數量" -#: report/models.py:649 +#: report/models.py:647 msgid "Report generation is complete" msgstr "報告生成完成" -#: report/models.py:653 +#: report/models.py:651 msgid "Progress" msgstr "進度" -#: report/models.py:653 +#: report/models.py:651 msgid "Report generation progress" msgstr "報告生成進度" -#: report/models.py:661 +#: report/models.py:659 msgid "Report Template" msgstr "報告模板" -#: report/models.py:668 report/models.py:691 +#: report/models.py:666 report/models.py:689 msgid "Output File" msgstr "輸出文件" -#: report/models.py:669 report/models.py:692 +#: report/models.py:667 report/models.py:690 msgid "Generated output file" msgstr "生成輸出文件" -#: report/models.py:680 +#: report/models.py:678 msgid "Label output plugin" msgstr "標籤輸出插件" -#: report/models.py:684 +#: report/models.py:682 msgid "Label Template" msgstr "標籤模板" -#: report/models.py:707 +#: report/models.py:705 msgid "Snippet" msgstr "代碼片段" -#: report/models.py:708 +#: report/models.py:706 msgid "Report snippet file" msgstr "報告代碼片段文件" -#: report/models.py:715 +#: report/models.py:713 msgid "Snippet file description" msgstr "代碼片段文件描述" -#: report/models.py:733 +#: report/models.py:731 msgid "Asset" msgstr "資產" -#: report/models.py:734 +#: report/models.py:732 msgid "Report asset file" msgstr "報告資產文件" -#: report/models.py:741 +#: report/models.py:739 msgid "Asset file description" msgstr "資產文件描述" @@ -7493,123 +7401,123 @@ msgstr "parpart_image 標籤需要一個零件實例" msgid "company_image tag requires a Company instance" msgstr "公司_圖片標籤需要一個公司實例" -#: stock/api.py:261 +#: stock/api.py:254 msgid "Filter by location depth" msgstr "按位置深度篩選" -#: stock/api.py:281 +#: stock/api.py:274 msgid "Filter by top-level locations" msgstr "按頂級位置篩選" -#: stock/api.py:296 +#: stock/api.py:289 msgid "Include sub-locations in filtered results" msgstr "在篩選結果中包含子地點" -#: stock/api.py:317 stock/serializers.py:1205 +#: stock/api.py:310 stock/serializers.py:1204 msgid "Parent Location" msgstr "上級地點" -#: stock/api.py:318 +#: stock/api.py:311 msgid "Filter by parent location" msgstr "按上級位置篩選" -#: stock/api.py:558 +#: stock/api.py:551 msgid "Part name (case insensitive)" msgstr "" -#: stock/api.py:564 +#: stock/api.py:557 msgid "Part name contains (case insensitive)" msgstr "" -#: stock/api.py:570 +#: stock/api.py:563 msgid "Part name (regex)" msgstr "" -#: stock/api.py:575 +#: stock/api.py:568 msgid "Part IPN (case insensitive)" msgstr "" -#: stock/api.py:581 +#: stock/api.py:574 msgid "Part IPN contains (case insensitive)" msgstr "" -#: stock/api.py:587 +#: stock/api.py:580 msgid "Part IPN (regex)" msgstr "" -#: stock/api.py:599 +#: stock/api.py:592 msgid "Minimum stock" msgstr "" -#: stock/api.py:603 +#: stock/api.py:596 msgid "Maximum stock" msgstr "" -#: stock/api.py:606 +#: stock/api.py:599 msgid "Status Code" msgstr "狀態代碼" -#: stock/api.py:646 +#: stock/api.py:639 msgid "External Location" msgstr "外部地點" -#: stock/api.py:745 +#: stock/api.py:738 msgid "Consumed by Build Order" msgstr "" -#: stock/api.py:755 +#: stock/api.py:748 msgid "Installed in other stock item" msgstr "" -#: stock/api.py:844 +#: stock/api.py:837 msgid "Part Tree" msgstr "零件樹" -#: stock/api.py:866 +#: stock/api.py:859 msgid "Updated before" msgstr "" -#: stock/api.py:870 +#: stock/api.py:863 msgid "Updated after" msgstr "" -#: stock/api.py:874 +#: stock/api.py:867 msgid "Stocktake Before" msgstr "" -#: stock/api.py:878 +#: stock/api.py:871 msgid "Stocktake After" msgstr "" -#: stock/api.py:883 +#: stock/api.py:876 msgid "Expiry date before" msgstr "過期日期前" -#: stock/api.py:887 +#: stock/api.py:880 msgid "Expiry date after" msgstr "過期日期後" -#: stock/api.py:890 stock/serializers.py:644 +#: stock/api.py:883 stock/serializers.py:644 msgid "Stale" msgstr "過期" -#: stock/api.py:991 +#: stock/api.py:984 msgid "Quantity is required" msgstr "請先輸入數量" -#: stock/api.py:996 +#: stock/api.py:989 msgid "Valid part must be supplied" msgstr "必須提供有效的零件" -#: stock/api.py:1023 +#: stock/api.py:1016 msgid "The given supplier part does not exist" msgstr "給定的供應商零件不存在" -#: stock/api.py:1033 +#: stock/api.py:1026 msgid "The supplier part has a pack size defined, but flag use_pack_size not set" msgstr "供應商零件有定義的包裝大小,但 use_pack_size 標誌未設置" -#: stock/api.py:1060 +#: stock/api.py:1053 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "不能為不可跟蹤的零件提供序列號" @@ -7629,7 +7537,7 @@ msgstr "為所有沒有圖標的位置設置默認圖標(可選)" msgid "Stock Location" msgstr "庫存地點" -#: stock/models.py:138 users/models.py:205 +#: stock/models.py:138 users/models.py:203 msgid "Stock Locations" msgstr "庫存地點" @@ -7718,7 +7626,7 @@ msgstr "為此庫存項目選擇匹配的供應商零件" msgid "Where is this stock item located?" msgstr "這個庫存物品在哪裏?" -#: stock/models.py:901 stock/serializers.py:1612 +#: stock/models.py:901 stock/serializers.py:1609 msgid "Packaging this stock item is stored in" msgstr "包裝此庫存物品存儲在" @@ -7734,7 +7642,7 @@ msgstr "此項目是否安裝在另一個項目中?" msgid "Serial number for this item" msgstr "此項目的序列號" -#: stock/models.py:945 stock/serializers.py:1595 +#: stock/models.py:945 stock/serializers.py:1592 msgid "Batch code for this stock item" msgstr "此庫存項的批號" @@ -7790,136 +7698,136 @@ msgstr "購買時一個單位的價格" msgid "Converted to part" msgstr "轉換為零件" -#: stock/models.py:1646 +#: stock/models.py:1638 msgid "Part is not set as trackable" msgstr "零件未設置為可跟蹤" -#: stock/models.py:1652 +#: stock/models.py:1644 msgid "Quantity must be integer" msgstr "數量必須是整數" -#: stock/models.py:1660 +#: stock/models.py:1652 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "數量不得超過現有庫存量 ({self.quantity})" -#: stock/models.py:1666 +#: stock/models.py:1658 msgid "Serial numbers must be provided as a list" msgstr "" -#: stock/models.py:1671 +#: stock/models.py:1663 msgid "Quantity does not match serial numbers" msgstr "數量不匹配序列號" -#: stock/models.py:1793 stock/models.py:2705 +#: stock/models.py:1785 stock/models.py:2694 msgid "Test template does not exist" msgstr "測試模板不存在" -#: stock/models.py:1811 +#: stock/models.py:1803 msgid "Stock item has been assigned to a sales order" msgstr "庫存項已分配到銷售訂單" -#: stock/models.py:1815 +#: stock/models.py:1807 msgid "Stock item is installed in another item" msgstr "庫存項已安裝在另一個項目中" -#: stock/models.py:1818 +#: stock/models.py:1810 msgid "Stock item contains other items" msgstr "庫存項包含其他項目" -#: stock/models.py:1821 +#: stock/models.py:1813 msgid "Stock item has been assigned to a customer" msgstr "庫存項已分配給客户" -#: stock/models.py:1824 stock/models.py:1998 +#: stock/models.py:1816 stock/models.py:1990 msgid "Stock item is currently in production" msgstr "庫存項目前正在生產" -#: stock/models.py:1827 +#: stock/models.py:1819 msgid "Serialized stock cannot be merged" msgstr "序列化的庫存不能合併" -#: stock/models.py:1834 stock/serializers.py:1488 +#: stock/models.py:1826 stock/serializers.py:1485 msgid "Duplicate stock items" msgstr "複製庫存項" -#: stock/models.py:1838 +#: stock/models.py:1830 msgid "Stock items must refer to the same part" msgstr "庫存項必須指相同零件" -#: stock/models.py:1846 +#: stock/models.py:1838 msgid "Stock items must refer to the same supplier part" msgstr "庫存項必須是同一供應商的零件" -#: stock/models.py:1851 +#: stock/models.py:1843 msgid "Stock status codes must match" msgstr "庫存狀態碼必須匹配" -#: stock/models.py:2121 +#: stock/models.py:2113 msgid "StockItem cannot be moved as it is not in stock" msgstr "庫存項不能移動,因為它沒有庫存" -#: stock/models.py:2606 +#: stock/models.py:2595 msgid "Stock Item Tracking" msgstr "庫存項跟蹤" -#: stock/models.py:2637 +#: stock/models.py:2626 msgid "Entry notes" msgstr "條目註釋" -#: stock/models.py:2677 +#: stock/models.py:2666 msgid "Stock Item Test Result" msgstr "庫存項測試結果" -#: stock/models.py:2708 +#: stock/models.py:2697 msgid "Value must be provided for this test" msgstr "必須為此測試提供值" -#: stock/models.py:2712 +#: stock/models.py:2701 msgid "Attachment must be uploaded for this test" msgstr "測試附件必須上傳" -#: stock/models.py:2717 +#: stock/models.py:2706 msgid "Invalid value for this test" msgstr "此測試的值無效" -#: stock/models.py:2741 +#: stock/models.py:2730 msgid "Test result" msgstr "測試結果" -#: stock/models.py:2748 +#: stock/models.py:2737 msgid "Test output value" msgstr "測試輸出值" -#: stock/models.py:2756 stock/serializers.py:245 +#: stock/models.py:2745 stock/serializers.py:245 msgid "Test result attachment" msgstr "測驗結果附件" -#: stock/models.py:2760 +#: stock/models.py:2749 msgid "Test notes" msgstr "測試備註" -#: stock/models.py:2768 +#: stock/models.py:2757 msgid "Test station" msgstr "測試站" -#: stock/models.py:2769 +#: stock/models.py:2758 msgid "The identifier of the test station where the test was performed" msgstr "進行測試的測試站的標識符" -#: stock/models.py:2775 +#: stock/models.py:2764 msgid "Started" msgstr "已開始" -#: stock/models.py:2776 +#: stock/models.py:2765 msgid "The timestamp of the test start" msgstr "測試開始的時間戳" -#: stock/models.py:2782 +#: stock/models.py:2771 msgid "Finished" msgstr "已完成" -#: stock/models.py:2783 +#: stock/models.py:2772 msgid "The timestamp of the test finish" msgstr "測試結束的時間戳" @@ -7995,7 +7903,7 @@ msgstr "添加時使用包裝尺寸:定義的數量是包裝的數量" msgid "Supplier Part Number" msgstr "供應商零件編號" -#: stock/serializers.py:636 users/models.py:174 +#: stock/serializers.py:636 users/models.py:172 msgid "Expired" msgstr "已過期" @@ -8024,7 +7932,7 @@ msgstr "數量不得超過現有庫存量 ({q})" msgid "Enter serial numbers for new items" msgstr "輸入新項目的序列號" -#: stock/serializers.py:721 stock/serializers.py:1445 stock/serializers.py:1735 +#: stock/serializers.py:721 stock/serializers.py:1442 stock/serializers.py:1732 msgid "Destination stock location" msgstr "目標庫存位置" @@ -8101,79 +8009,79 @@ msgstr "選擇要更改狀態的庫存項目" msgid "No stock items selected" msgstr "未選擇庫存商品" -#: stock/serializers.py:1133 stock/serializers.py:1213 +#: stock/serializers.py:1133 stock/serializers.py:1210 msgid "Sublocations" msgstr "轉租" -#: stock/serializers.py:1206 +#: stock/serializers.py:1205 msgid "Parent stock location" msgstr "上級庫存地點" -#: stock/serializers.py:1317 +#: stock/serializers.py:1314 msgid "Part must be salable" msgstr "零件必須可銷售" -#: stock/serializers.py:1321 +#: stock/serializers.py:1318 msgid "Item is allocated to a sales order" msgstr "物料已分配到銷售訂單" -#: stock/serializers.py:1325 +#: stock/serializers.py:1322 msgid "Item is allocated to a build order" msgstr "項目被分配到生產訂單中" -#: stock/serializers.py:1349 +#: stock/serializers.py:1346 msgid "Customer to assign stock items" msgstr "客户分配庫存項目" -#: stock/serializers.py:1355 +#: stock/serializers.py:1352 msgid "Selected company is not a customer" msgstr "所選公司不是客户" -#: stock/serializers.py:1363 +#: stock/serializers.py:1360 msgid "Stock assignment notes" msgstr "庫存分配説明" -#: stock/serializers.py:1373 stock/serializers.py:1640 +#: stock/serializers.py:1370 stock/serializers.py:1637 msgid "A list of stock items must be provided" msgstr "必須提供庫存物品清單" -#: stock/serializers.py:1452 +#: stock/serializers.py:1449 msgid "Stock merging notes" msgstr "庫存合併説明" -#: stock/serializers.py:1457 +#: stock/serializers.py:1454 msgid "Allow mismatched suppliers" msgstr "允許不匹配的供應商" -#: stock/serializers.py:1458 +#: stock/serializers.py:1455 msgid "Allow stock items with different supplier parts to be merged" msgstr "允許合併具有不同供應商零件的庫存項目" -#: stock/serializers.py:1463 +#: stock/serializers.py:1460 msgid "Allow mismatched status" msgstr "允許不匹配的狀態" -#: stock/serializers.py:1464 +#: stock/serializers.py:1461 msgid "Allow stock items with different status codes to be merged" msgstr "允許合併具有不同狀態代碼的庫存項目" -#: stock/serializers.py:1474 +#: stock/serializers.py:1471 msgid "At least two stock items must be provided" msgstr "必須提供至少兩件庫存物品" -#: stock/serializers.py:1541 +#: stock/serializers.py:1538 msgid "No Change" msgstr "無更改" -#: stock/serializers.py:1570 +#: stock/serializers.py:1567 msgid "StockItem primary key value" msgstr "庫存項主鍵值" -#: stock/serializers.py:1582 +#: stock/serializers.py:1579 msgid "Stock item is not in stock" msgstr "" -#: stock/serializers.py:1630 +#: stock/serializers.py:1627 msgid "Stock transaction notes" msgstr "庫存交易記錄" @@ -8305,11 +8213,11 @@ msgstr "寄送給客户" msgid "Returned from customer" msgstr "從客户端退回" -#: templates/403.html:6 templates/403.html:12 templates/403_csrf.html:7 +#: templates/403.html:6 templates/403.html:10 templates/403_csrf.html:7 msgid "Permission Denied" msgstr "權限受限" -#: templates/403.html:15 +#: templates/403.html:11 msgid "You do not have permission to view this page." msgstr "您沒有查看此頁面的權限。" @@ -8317,47 +8225,39 @@ msgstr "您沒有查看此頁面的權限。" msgid "Authentication Failure" msgstr "認證失敗" -#: templates/403_csrf.html:14 +#: templates/403_csrf.html:12 msgid "You have been logged out from InvenTree." msgstr "您已從InvenTree註銷。" -#: templates/403_csrf.html:19 -msgid "Login" -msgstr "登錄" - -#: templates/404.html:6 templates/404.html:12 +#: templates/404.html:6 templates/404.html:10 msgid "Page Not Found" msgstr "找不到頁面" -#: templates/404.html:15 +#: templates/404.html:11 msgid "The requested page does not exist" msgstr "請求的頁面不存在" -#: templates/500.html:6 templates/500.html:12 +#: templates/500.html:6 templates/500.html:10 msgid "Internal Server Error" msgstr "服務器內部錯誤" -#: templates/500.html:15 +#: templates/500.html:11 #, python-format msgid "The %(inventree_title)s server raised an internal error" msgstr "%(inventree_title)s 服務器引起一個內部錯誤" -#: templates/500.html:16 +#: templates/500.html:12 msgid "Refer to the error log in the admin interface for further details" msgstr "有關更多詳細信息,請參閲管理界面中的錯誤日誌" -#: templates/503.html:11 templates/503.html:33 +#: templates/503.html:11 templates/503.html:15 msgid "Site is in Maintenance" msgstr "網站正在維護中" -#: templates/503.html:39 +#: templates/503.html:17 msgid "The site is currently in maintenance and should be up again soon!" msgstr "該網站目前正在維護中,應該很快就會重新上線!" -#: templates/account/base.html:20 -msgid "InvenTree logo" -msgstr "InvenTree 徽標" - #: templates/base.html:51 msgid "Server Restart Required" msgstr "需要重新啓動服務器" @@ -8423,31 +8323,31 @@ msgstr "點擊以下鏈接查看此零件" msgid "Minimum Quantity" msgstr "最小數量" -#: users/admin.py:101 +#: users/admin.py:100 msgid "Users" msgstr "用户" -#: users/admin.py:102 +#: users/admin.py:101 msgid "Select which users are assigned to this group" msgstr "選擇分配給此組的用户" -#: users/admin.py:246 +#: users/admin.py:245 msgid "The following users are members of multiple groups" msgstr "以下用户是多個組的成員" -#: users/admin.py:280 +#: users/admin.py:279 msgid "Personal info" msgstr "個人信息" -#: users/admin.py:282 +#: users/admin.py:281 msgid "Permissions" msgstr "權限" -#: users/admin.py:285 +#: users/admin.py:284 msgid "Important dates" msgstr "重要日期" -#: users/authentication.py:29 users/models.py:138 +#: users/authentication.py:29 users/models.py:136 msgid "Token has been revoked" msgstr "令牌已被撤銷" @@ -8455,55 +8355,55 @@ msgstr "令牌已被撤銷" msgid "Token has expired" msgstr "令牌已過期" -#: users/models.py:81 +#: users/models.py:79 msgid "API Token" msgstr "API 令牌" -#: users/models.py:82 +#: users/models.py:80 msgid "API Tokens" msgstr "API 令牌" -#: users/models.py:118 +#: users/models.py:116 msgid "Token Name" msgstr "令牌名稱" -#: users/models.py:119 +#: users/models.py:117 msgid "Custom token name" msgstr "自定義令牌名稱" -#: users/models.py:125 +#: users/models.py:123 msgid "Token expiry date" msgstr "令牌過期日期" -#: users/models.py:133 +#: users/models.py:131 msgid "Last Seen" msgstr "最近一次在線" -#: users/models.py:134 +#: users/models.py:132 msgid "Last time the token was used" msgstr "最近使用令牌的時間" -#: users/models.py:138 +#: users/models.py:136 msgid "Revoked" msgstr "撤銷" -#: users/models.py:201 +#: users/models.py:199 msgid "Admin" msgstr "管理員" -#: users/models.py:204 +#: users/models.py:202 msgid "Stocktake" msgstr "庫存盤點" -#: users/models.py:208 +#: users/models.py:206 msgid "Purchase Orders" msgstr "採購訂單" -#: users/models.py:209 +#: users/models.py:207 msgid "Sales Orders" msgstr "銷售訂單" -#: users/models.py:210 +#: users/models.py:208 msgid "Return Orders" msgstr "退貨訂單" diff --git a/src/frontend/src/locales/ar/messages.po b/src/frontend/src/locales/ar/messages.po index 9638c7e93c..36e6297909 100644 --- a/src/frontend/src/locales/ar/messages.po +++ b/src/frontend/src/locales/ar/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ar\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Arabic\n" "Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "مسح" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "حذف هذا الصف" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "الخيارات" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "اختر موقع المصدر لتخصيص المخزون" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "اختر موقع المصدر لتخصيص المخزون" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "تم تخصيص عناصر المخزون" @@ -3623,7 +3671,7 @@ msgstr "تم تخصيص عناصر المخزون" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/bg/messages.po b/src/frontend/src/locales/bg/messages.po index 3b79923767..5d5985f632 100644 --- a/src/frontend/src/locales/bg/messages.po +++ b/src/frontend/src/locales/bg/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: bg\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/cs/messages.po b/src/frontend/src/locales/cs/messages.po index 149fa0250a..d1dc569c32 100644 --- a/src/frontend/src/locales/cs/messages.po +++ b/src/frontend/src/locales/cs/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: cs\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Czech\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -50,52 +50,54 @@ msgstr "Zastavit skenování" msgid "Start scanning" msgstr "Začít skenovat" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Skenovat čárový kód" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Odstranit čárový kód" @@ -244,13 +246,13 @@ msgstr "Tisk reportu" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Nízké zásoby" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Odstranit přidružený obrázek z této položky?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Odstranit" @@ -574,6 +576,7 @@ msgstr "Odstranit" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Vymazat" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Odeslat" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Aktualizovat" @@ -880,7 +884,7 @@ msgstr "Aktualizovat" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Odstranit" @@ -898,154 +902,158 @@ msgstr "Odstranit" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Přihlášení úspěšné" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Přihlášení proběhlo úspěšně" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Přihlášení se nezdařilo" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Zkontrolujte vstup a zkuste to znovu." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Přihlášení se nezdařilo" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Zkontrolujte vstup a zkuste to znovu." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "E-mail byl doručen úspěšně" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Zkontrolujte doručenou poštu pro přihlašovací odkaz. Pokud máte účet, obdržíte přihlašovací odkaz. Zkontrolujte také spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Odeslání e-mailu se nezdařilo" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Nebo pokračovat jinými metodami" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Uživatelské jméno" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Vaše uživatelské jméno" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Heslo" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Vaše heslo" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Heslo" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Obnovit heslo" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Vaše heslo" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Obnovit heslo" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-mail" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Zašleme vám přihlašovací odkaz - pokud jste registrováni" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Poslat si email" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Použijte uživatelské jméno a heslo" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Přihlásit se" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Odeslat e-mail" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registrace proběhla úspěšně" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Potvrďte, prosím, svou e-mailovou adresu pro dokončení registrace" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Chyba vstupu" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Toto bude použito pro potvrzení" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Opakujte heslo" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Zadejte heslo znova" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registrovat" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Nebo použijte SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Nemáte účet?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Zpět na přihlášení" @@ -1058,7 +1066,7 @@ msgstr "Server" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Hledat..." @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Hledat" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Načítání" @@ -1215,11 +1223,11 @@ msgstr "Nebyly nalezeny žádné výsledky" msgid "modelRenderer entry required for tables" msgstr "Položka modelRenderer je požadovaná pro tabulky" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Nejsou žádné záznamy" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Akce čárového kódu" @@ -1418,10 +1427,6 @@ msgstr "Akce čárového kódu" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Nastavení systému" @@ -1791,7 +1796,7 @@ msgstr "Odhlásit" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Díly" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Zásoby" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Nákup" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Prodej" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigace" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "Nemáš žádné nové notifikace." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "výsledky" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Zadejte hledaný text" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Možnosti hledání" - -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Zadejte hledaný text" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Možnosti hledání" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Datum" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Datum" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Šablona parametru dílu" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "Dodavatel dílu" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Skladová položka" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Skladová položka" msgid "Stock Items" msgstr "Skladové položky" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Umístění skladu" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Historie skladu" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Historie skladů" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Firmy" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Firmy" msgid "Project Code" msgstr "Kód projektu" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Kódy projektu" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Kódy projektu" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adresa" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresy" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakty" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Správce" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Správci" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Správci" msgid "User" msgstr "Uživatel" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Uživatelé" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Skupiny" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Neaktivní" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "Sériové číslo" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Sériové číslo" msgid "Quantity" msgstr "Množství" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Stav" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Nadřazená kategorie" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Zvolte umístění" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Cíl položky byl vybrán" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Nastavit umístění" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Lokace" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Přesunout" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Přesunout" msgid "In Stock" msgstr "Na skladě" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Přidat" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Počet" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Přihlášen" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nic nevybráno" @@ -4219,8 +4289,8 @@ msgstr "Nic nevybráno" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Přihlášení" @@ -4228,20 +4298,59 @@ msgstr "Přihlášení" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primární" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Ověřeno" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Neověřeno" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Přidat e-mailovou adresu" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-mailová adresa" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Nastavit jako výchozí" @@ -4731,46 +4880,143 @@ msgstr "Nastavit jako výchozí" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Přidat e-mailovou adresu" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-mailová adresa" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Čárové kódy" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Ceník" @@ -5128,19 +5382,19 @@ msgstr "Ceník" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Štítky" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Webová stránka" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Upravit společnost" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuální" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Vybrat" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/da/messages.po b/src/frontend/src/locales/da/messages.po index b895485fee..7e418def94 100644 --- a/src/frontend/src/locales/da/messages.po +++ b/src/frontend/src/locales/da/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: da\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Danish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/de/messages.po b/src/frontend/src/locales/de/messages.po index 6fa21e3e66..f3ab1d4797 100644 --- a/src/frontend/src/locales/de/messages.po +++ b/src/frontend/src/locales/de/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: de\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: German\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Scan stoppen" msgid "Start scanning" msgstr "Scan starten" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Barcode" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Barcode scannen" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Die Verknüpfung zum zugehörigen Barcode wird entfernt" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Verknüpfung des Barcodes aufheben" @@ -244,13 +246,13 @@ msgstr "Berichte drucken" msgid "Remove this row" msgstr "Diese Zeile entfernen" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Geringer Bestand" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Verknüpftes Bild von diesem Teil entfernen?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Entfernen" @@ -574,6 +576,7 @@ msgstr "Entfernen" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Leeren" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Speichern" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Fehler für ein oder mehrere Formularfelder vorhanden" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Aktualisieren" @@ -880,7 +884,7 @@ msgstr "Aktualisieren" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Löschen" @@ -898,154 +902,158 @@ msgstr "Löschen" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Anmeldung erfolgreich" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Erfolgreich eingeloggt" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Login fehlgeschlagen" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Überprüfen Sie Ihre Eingabe und versuchen Sie es erneut." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Login fehlgeschlagen" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Überprüfen Sie Ihre Eingabe und versuchen Sie es erneut." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Mail erfolgreich gesendet" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Prüfen Sie Ihren Posteingang auf den Anmeldelink. Wenn Sie ein Konto haben, erhalten Sie einen Anmeldelink. Prüfen Sie auch den Spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "E-Mail Zustellung fehlgeschlagen" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Oder mit anderen Methoden fortfahren" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nutzername" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Ihr Benutzername" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Passwort" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Dein Passwort" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Passwort" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Passwort zurücksetzen" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Dein Passwort" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Passwort zurücksetzen" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Mail" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Wir werden Ihnen einen Link für die Anmeldung senden" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Mail erhalten" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Benutzername und Passwort benutzen" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Anmelden" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "E-Mail senden" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registrierung erfolgreich" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Bitte bestätigen Sie Ihre E-Mail-Adresse um die Registrierung abzuschließen" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Eingabefehler" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Dies wird zur Bestätigung verwendet" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Passwort wiederholen" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Passwort erneut eingeben" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registrieren" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Oder SSO verwenden" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Nicht registriert?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Zurück zur Anmeldung" @@ -1058,7 +1066,7 @@ msgstr "Adresse" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Nicht kategorisiert" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Suchen..." @@ -1197,13 +1205,13 @@ msgstr "{0} Symbole" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Suche" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Wird geladen" @@ -1215,11 +1223,11 @@ msgstr "Keine Ergebnisse gefunden" msgid "modelRenderer entry required for tables" msgstr "modelRenderer Eintrag für Tabellen erforderlich" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Keine Einträge vorhanden" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Daten werden verarbeiten" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Ein Fehler ist aufgetreten" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Barcode-Aktionen" @@ -1418,10 +1427,6 @@ msgstr "Barcode-Aktionen" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Kontoeinstellungen" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Einstellungen" @@ -1791,7 +1796,7 @@ msgstr "Abmelden" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Teile" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Lager" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Einkauf" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Verkäufe" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigation" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Alle Benachrichtigungen anzeigen" msgid "You have no unread notifications." msgstr "Du hast keine ungelesenen Benachrichtigungen. " -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "Ergebnisse" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Suchtext eingeben" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Suchoptionen" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Lieferanten" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex Suche" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Hersteller" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Volltextsuche" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Kunden" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Suchtext eingeben" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Suchoptionen" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex Suche" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Volltextsuche" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Bei der Suchanfrage ist ein Fehler aufgetreten" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Keine Ergebnisse" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Keine Ergebnisse für Suchanfrage verfügbar" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Datum" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Datum" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Installationspfad" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Integriert" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Plugin Einstellungen" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Plugin-Konfiguration" @@ -2116,22 +2154,22 @@ msgstr "Unbekanntes Modell: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Teil Parametervorlage" msgid "Part Parameter Templates" msgstr "Teil Parametervorlagen" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Testvorlage für Teil" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Testvorlagen für Teil" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Testvorlagen für Teil" msgid "Supplier Part" msgstr "Zuliefererteil" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Zuliefererteile" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Herstellerteil" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Herstellerteile" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Teilkategorie" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Teil-Kategorien" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Lagerartikel" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Lagerartikel" msgid "Stock Items" msgstr "Lagerartikel" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Lagerort" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerorte" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Lagerort Typ" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Lagerort Typen" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Lagerhistorie" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Bestandshistorie" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Bauauftrag" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Builds" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Bauauftragsposition" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Bauauftragspositionen" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Unternehmen" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Unternehmen" msgid "Project Code" msgstr "Projekt-Code" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Projektnummern" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Projektnummern" msgid "Purchase Order" msgstr "Einkaufsbestellung" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Bestellungen" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Bestellposition" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Bestellpositionen" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Bestellpositionen" msgid "Sales Order" msgstr "Verkaufsauftrag" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Aufträge" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Versand der Bestellung" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Versand der Bestellungen" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Rückgabe Auftrag" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Reklamationen" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adressen" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakte" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Eigentümer" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Eigentümer" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Eigentümer" msgid "User" msgstr "Nutzer" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Benutzer" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Gruppe" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Gruppen" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importsitzung" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importsitzungen" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importsitzung" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importsitzungen" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Label Vorlage" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Label Vorlagen" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Plugin-Konfigurationen" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Sendung" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inaktiv" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Kein Bestand" @@ -2536,10 +2575,10 @@ msgstr "Seriennummer" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Seriennummer" msgid "Quantity" msgstr "Anzahl" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Losnummer" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "Bauprodukt" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Losnummer" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Losnummer" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Bauprodukt fertigstellen" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Bauprodukte wurden fertiggestellt" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Bauprodukte verschrotten" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Bauprodukte wurden verschrottet" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Bauprodukte abbrechen" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Bauprodukte wurden abgebrochen" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Bauprodukte abbrechen" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Bauprodukte wurden abgebrochen" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Zugewiesen" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Quell Lagerort" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "Bestand zuweisen" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Übergeordnete Teilkategorie" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Lagerort wählen" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Teile-Zielort ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Standard-Lagerort der Teile-Kategorie ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Lagerort zuvor empfangener Artikel ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Standard-Lagerort ausgewählt" @@ -3688,60 +3736,60 @@ msgstr "Standard-Lagerort ausgewählt" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Lagerort festlegen" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Status ändern" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Notiz hinzufügen" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Lagerort" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Am Standard-Lagerort einbuchen" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Am Standard-Lagerort einbuchen" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Am Zielort der Bauauftragsposition speichern" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Bei bereits vorhandenen Lagerbestand einbuchen" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Bei bereits vorhandenen Lagerbestand einbuchen" msgid "Batch Code" msgstr "Losnummer" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Seriennummern" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Verpackung" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Notiz" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Erhalten" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Positionen empfangen" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Teile empfangen" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" msgid "Stock Status" msgstr "Lagerbestand Status" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Lagerartikel hinzufügen" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Teil zur Installation auswählen" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Lade..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Zum Standard-Lagerort verschieben" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Verschieben" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Verschieben" msgid "In Stock" msgstr "Auf Lager" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Hinzufügen" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Anzahl" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Bestand entfernen" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Bestand zählen" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Bestandsstatus ändern" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Bestand zusammenführen" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Bestand löschen" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Wert" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Ausgeloggt" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Erfolgreich abgemeldet" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Erfolgreich abgemeldet" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Ausgeloggt" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Erfolgreich abgemeldet" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Prüfen Sie Ihren Posteingang für einen Link zum Zurücksetzen. Dies funktioniert nur, wenn Sie ein Konto haben. Prüfen Sie auch den Spam-Ordner." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Zurücksetzen fehlgeschlagen" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Angemeldet" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Erfolgreich angemeldet" @@ -4166,40 +4224,52 @@ msgstr "Sind Sie sicher, dass Sie dieses Element löschen möchten?" msgid "Latest serial number" msgstr "Letzte Seriennummer" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Das Passwort wurde erfolgreich festgelegt. Sie können sich jetzt mit Ihrem neuen Passwort anmelden" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Prüfe ob Sie bereits angemeldet sind" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Keine Auswahl" @@ -4219,8 +4289,8 @@ msgstr "Keine Auswahl" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Anmelden" @@ -4228,20 +4298,59 @@ msgstr "Anmelden" msgid "Logging out" msgstr "Abmelden" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token ungültig" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Sie müssen einen gültigen Token angeben, um ein neues Passwort festzulegen. Prüfen Sie Ihren Posteingang für einen Link zum Zurücksetzen." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Passwort festgelegt" @@ -4249,6 +4358,14 @@ msgstr "Passwort festgelegt" msgid "Set new password" msgstr "Passwort festlegen" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Passwort festlegen" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Fehler: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Personalzugang" msgid "Superuser" msgstr "Administrator" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Single Sign On Konten" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Nicht aktiviert" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Single Sign On ist für diesen Server nicht aktiviert" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifaktor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Multifaktor-Authentifizierung ist nicht für Ihr Konto eingerichtet" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Die folgenden E-Mail-Adressen sind mit deinem Konto verknüpft:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primär" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verifiziert" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Unbestätigt" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Emailadresse hinzufügen" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-Mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-Mail Adresse" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Primär machen" @@ -4731,46 +4880,143 @@ msgstr "Primär machen" msgid "Re-send Verification" msgstr "Senden Sie die Bestätigung erneut" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Emailadresse hinzufügen" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-Mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-Mail Adresse" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "E-Mail hinzufügen" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Anbieter wurde nicht konfiguriert" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Nicht konfiguriert" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Es sind keine sozialen Netzwerke mit diesem Konto verbunden." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Sie können sich mit einem der folgenden Drittanbieterkonten bei Ihrem Konto anmelden" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token in Verwendung - keine Aktionen" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Widerrufen" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Keine Token konfiguriert" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Zuletzt aktiv" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Rahmen Radius" msgid "Loader" msgstr "Lader" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Barcode" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Preise" @@ -5128,19 +5382,19 @@ msgstr "Preise" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Beschriftungen" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Berichte" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Bauaufträge" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Aufgegeben von" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Erstellt" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Bauauftrag Details" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Positionen" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Unvollständige Endprodukte" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "Testergebnisse" msgid "Edit Build Order" msgstr "Bauauftrag bearbeiten" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Neuer Bauauftrag" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Bauauftrag abbrechen" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Bauauftrag-Aktionen" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Bestellung stornieren" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Bauauftrag" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Webseite" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Telefonnummer" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-Mail-Adresse" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Standardwährung" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Standardwährung" msgid "Supplier" msgstr "Lieferant" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Hersteller" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Hersteller" msgid "Customer" msgstr "Kunde" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Zuliefererteile" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Hergestellte Teile" @@ -5591,24 +5850,20 @@ msgstr "Hergestellte Teile" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Zuliefererteile" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Zugeordneter Bestand" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Unternehmen bearbeiten" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Firma löschen" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Firmen-Aktionen" @@ -5647,13 +5902,6 @@ msgstr "Herstellerteil Details" msgid "Parameters" msgstr "Parameter" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Lieferanten" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Zuliefererteil Details" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Empfangene Lagerartikel" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Zulieferer-Preise" @@ -5882,7 +6130,7 @@ msgstr "Schlüsselwörter" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Verfügbarer Bestand" @@ -5942,7 +6190,7 @@ msgstr "In Produktion" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Gesperrt" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Virtuelles Teil" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Standard Zulieferer" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Preisspanne" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Teil bearbeiten" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Teil hinzufügen" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Bestand bestellen" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Teile-Aktionen" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Keine Preisdaten für diesen Teil gefunden." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Preisübersicht" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Kaufhistorie" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Interne Preise" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Stücklisten Preise" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Varianten Preise" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Verkaufs Preise" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Verkaufshistorie" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maximum" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Neuer Inventurbericht" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimaler Wert" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maximaler Wert" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Hersteller" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Gesamtpreis" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponente" @@ -6277,13 +6520,13 @@ msgstr "Komponente" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Niedrigster Preis" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Höchster Preis" @@ -6344,65 +6587,65 @@ msgstr "Preisstaffel" msgid "Price" msgstr "Preis" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Aktualisiere Preisinformationen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Preisinformationen aktualisiert" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Aktualisierung der Preisinformationen fehlgeschlagen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Preis bearbeiten" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Preiskategorie" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Preise überschreiben" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Gesamt Preise" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Einkaufs Preise" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Zuletzt aktualisiert" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Preis nicht festgelegt" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Preisdaten für dieses Teil wurden nicht berechnet" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Preisaktionen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Aktualisieren" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Preisinformationen aktualisieren" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Preisinformationen bearbeiten" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Lieferant Preis" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Variantenteil" @@ -6449,13 +6692,13 @@ msgstr "Variantenteil" msgid "Edit Purchase Order" msgstr "Bestellung bearbeiten" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Bestellung hinzufügen" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Lieferanten-Referenz" @@ -6465,24 +6708,24 @@ msgstr "Lieferanten-Referenz" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Abgeschlossene Positionen" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Bestimmungsort" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Bestellwährung" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Gesamtkosten" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Herausgabedatum" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Herausgabedatum" msgid "Completion Date" msgstr "Fertigstellungsdatum" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Bestelldetails" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Bestellaktionen" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Rücksendeauftrag bearbeiten" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Neuer Rücksendeauftrag" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Kunden" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Abgeschlossene Sendungen" @@ -6596,46 +6835,46 @@ msgstr "Abgeschlossene Sendungen" msgid "Edit Sales Order" msgstr "Auftrag bearbeiten" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Auftrag hinzufügen" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Bestellung versenden" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Tabellenfilter" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Ausgewählte Datensätze löschen" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Daten aktualisieren" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Gebäude" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Verbrauchbare Artikel anzeigen" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Hat Preise" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Montage" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Aktive Baugruppen anzeigen" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Nachverfolgbar" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "Optionale Positionen anzeigen" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Unter-Kategorien einschließen" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Vorlagen mit Auswahlen anzeigen" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Hat Einheiten" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Mindest-Lagerbestand" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtern nach Teil aktiv Status" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtern nach Baugruppen Attribut" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Teile in Unterkategorien einschließen" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Nach Teilattributen filtern" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtern nach Nachverfolgbarer Eigenschaft" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Nach Teilen mit Einheiten filtern" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Hat IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Nach Teilen filtern, die eine interne Teilenummer haben" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Auf Lager" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Nach Teilen mit Lagerbestand filtern" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Nach Teilen mit geringem Lagerbestand filtern" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Kaufbar" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Nach Teilen filtern, die kaufbar sind" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Verkaufbar" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Nach Teilen filtern, die verkaufbar sind" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuell" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Nach Teilen filtern, die virtuell sind" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Nicht virtuell" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Nach Teilen filtern die eine Vorlage sind" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Wähle" @@ -8708,19 +8947,19 @@ msgstr "描述不可用" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Plugin Aktivierung bestätigen" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Plugin Deaktivierung bestätigen" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "Das ausgewählte Plugin wird aktiviert" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "Das ausgewählte Plugin wird deaktiviert" @@ -8733,19 +8972,19 @@ msgstr "Das ausgewählte Plugin wird deaktiviert" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Deaktivieren" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Aktivieren" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Deinstallieren" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Plugin aktivieren" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Plugin installieren" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Installieren" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plugin erfolgreich installiert" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Plugin deinstallieren" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Plugin deinstallieren bestätigen" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "Das ausgewählte Plugin wird deinstalliert." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Plugin erfolgreich deinstalliert" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Plugin erfolgreich deinstalliert" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Plugin löschen" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Durch das Löschen dieser Plugin-Konfiguration werden alle zugehörigen Einstellungen und Daten entfernt. Soll dieses Plugin gelöscht werden?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Erweiterungen neu geladen" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Plugins wurden erfolgreich neu geladen" @@ -8830,7 +9069,7 @@ msgstr "Plugins wurden erfolgreich neu geladen" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Plugins neu laden" @@ -8842,11 +9081,11 @@ msgstr "Plugins neu laden" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Plugin installieren" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Plugin Detail" @@ -8866,11 +9105,11 @@ msgstr "Plugin Detail" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Beispiel" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Installiert" diff --git a/src/frontend/src/locales/el/messages.po b/src/frontend/src/locales/el/messages.po index 3c15993dd4..84533ba5de 100644 --- a/src/frontend/src/locales/el/messages.po +++ b/src/frontend/src/locales/el/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: el\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Greek\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Αφαίρεση της σχετικής εικόνας από αυτό το στοιχείο;" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Αφαίρεση" @@ -574,6 +576,7 @@ msgstr "Αφαίρεση" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Εκκαθάριση" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Υποβολή" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Ενημέρωση" @@ -880,7 +884,7 @@ msgstr "Ενημέρωση" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Διαγραφή" @@ -898,154 +902,158 @@ msgstr "Διαγραφή" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Επιτυχής σύνδεση" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Ανενεργό" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Εικονικό" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Επιλέξτε" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/en/messages.po b/src/frontend/src/locales/en/messages.po index 1ef4f24300..2d7dea7332 100644 --- a/src/frontend/src/locales/en/messages.po +++ b/src/frontend/src/locales/en/messages.po @@ -45,52 +45,54 @@ msgstr "Stop scanning" msgid "Start scanning" msgstr "Start scanning" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Barcode" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Scan" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "Camera Input" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "Scanner Input" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "Barcode Data" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "No barcode data" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "Scan or enter barcode data" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -106,8 +108,8 @@ msgstr "Enter barcode data" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Scan Barcode" @@ -158,7 +160,7 @@ msgstr "Failed to link barcode" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -171,7 +173,7 @@ msgstr "This will remove the link to the associated barcode" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Unlink Barcode" @@ -239,13 +241,13 @@ msgstr "Print Reports" msgid "Remove this row" msgstr "Remove this row" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "You will be redirected to the provider for further actions." #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "This provider is not full set up." +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -356,7 +358,7 @@ msgstr "Show the number of part categories which you have subscribed to" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Low Stock" @@ -556,9 +558,9 @@ msgid "Remove the associated image from this item?" msgstr "Remove the associated image from this item?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Remove" @@ -569,6 +571,7 @@ msgstr "Remove" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -603,6 +606,7 @@ msgstr "Clear" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Submit" @@ -866,7 +870,7 @@ msgid "Errors exist for one or more form fields" msgstr "Errors exist for one or more form fields" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Update" @@ -875,7 +879,7 @@ msgstr "Update" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Delete" @@ -893,154 +897,158 @@ msgstr "Delete" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Login successful" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Logged in successfully" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Login failed" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Check your input and try again." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Login failed" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Check your input and try again." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Mail delivery successful" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Mail delivery failed" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Or continue with other methods" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Username" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Your username" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Password" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Your password" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Password" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Your password" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Reset password" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "We will send you a link to login - if you are registered" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Send me an email" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Use username and password" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Log In" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Send Email" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "Passwords do not match" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registration successful" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Please confirm your email address to complete the registration" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Input error" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "This will be used for a confirmation" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Password repeat" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Repeat password" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Register" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Or use SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Don't have an account?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Go back to login" @@ -1053,7 +1061,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1174,7 +1182,7 @@ msgstr "Uncategorized" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Search..." @@ -1192,13 +1200,13 @@ msgstr "{0} icons" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Search" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Loading" @@ -1210,11 +1218,11 @@ msgstr "No results found" msgid "modelRenderer entry required for tables" msgstr "modelRenderer entry required for tables" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "No entries available" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "Add new row" @@ -1288,6 +1296,7 @@ msgstr "Processing Data" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "An error occurred" @@ -1404,8 +1413,8 @@ msgid "Options" msgstr "Options" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Barcode Actions" @@ -1413,10 +1422,6 @@ msgstr "Barcode Actions" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "View Barcode" @@ -1740,8 +1745,8 @@ msgstr "Account Settings" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "System Settings" @@ -1786,7 +1791,7 @@ msgstr "Logout" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1797,8 +1802,8 @@ msgstr "Parts" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1808,7 +1813,7 @@ msgstr "Stock" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Manufacturing" @@ -1819,24 +1824,24 @@ msgstr "Manufacturing" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Purchasing" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Sales" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1854,16 +1859,14 @@ msgid "Navigation" msgstr "Navigation" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1886,45 +1889,80 @@ msgstr "View all notifications" msgid "You have no unread notifications." msgstr "You have no unread notifications." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "No Overview Available" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "No overview available for this model type" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "View all results" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "results" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "Remove search group" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Suppliers" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Manufacturers" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex search" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Customers" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Enter search text" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Refresh search results" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Search Options" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex search" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Whole word search" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "An error occurred during search query" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "No Results" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "No results available for search query" @@ -1960,15 +1998,15 @@ msgid "Plugin Information" msgstr "Plugin Information" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2003,8 +2041,8 @@ msgid "Date" msgstr "Date" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2012,10 +2050,10 @@ msgstr "Date" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2034,7 +2072,7 @@ msgstr "Installation Path" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Builtin" @@ -2048,7 +2086,7 @@ msgid "Plugin Settings" msgstr "Plugin Settings" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Plugin Configuration" @@ -2111,22 +2149,22 @@ msgstr "Unknown model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2149,15 +2187,15 @@ msgstr "Part Parameter Template" msgid "Part Parameter Templates" msgstr "Part Parameter Templates" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Part Test Template" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Part Test Templates" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2168,44 +2206,46 @@ msgstr "Part Test Templates" msgid "Supplier Part" msgstr "Supplier Part" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Supplier Parts" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Manufacturer Part" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Manufacturer Parts" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Part Category" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Part Categories" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Stock Item" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2214,70 +2254,70 @@ msgstr "Stock Item" msgid "Stock Items" msgstr "Stock Items" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Stock Location" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Stock Locations" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Stock Location Type" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Stock Location Types" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Stock History" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Stock Histories" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Build" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Builds" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Build Line" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Build Lines" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Build Item" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Build Items" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Company" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Companies" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2286,15 +2326,15 @@ msgstr "Companies" msgid "Project Code" msgstr "Project Code" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Project Codes" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2302,27 +2342,27 @@ msgstr "Project Codes" msgid "Purchase Order" msgstr "Purchase Order" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Purchase Orders" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Purchase Order Line" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Purchase Order Lines" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2332,77 +2372,76 @@ msgstr "Purchase Order Lines" msgid "Sales Order" msgstr "Sales Order" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Sales Orders" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Sales Order Shipment" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Sales Order Shipments" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Return Order" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Return Orders" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Return Order Line Item" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Return Order Line Items" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Address" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Addresses" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contact" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contacts" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Owner" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Owners" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2413,80 +2452,80 @@ msgstr "Owners" msgid "User" msgstr "User" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Users" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Group" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Groups" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Import Session" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Import Sessions" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Import Session" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Import Sessions" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Label Template" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Label Templates" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Report Template" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Report Templates" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Plugin Configurations" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Content Type" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Content Types" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Content Type" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Content Types" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "Selection List" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "Selection Lists" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2507,7 +2546,7 @@ msgstr "Shipment" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2515,7 +2554,7 @@ msgstr "Inactive" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "No stock" @@ -2531,10 +2570,10 @@ msgstr "Serial Number" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2555,6 +2594,22 @@ msgstr "Serial Number" msgid "Quantity" msgstr "Quantity" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Batch" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3040,7 +3095,7 @@ msgstr "Please correct the errors in the selected parts" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "Order Parts" @@ -3504,7 +3559,7 @@ msgstr "About the InvenTree Project" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3512,22 +3567,15 @@ msgstr "About the InvenTree Project" msgid "Build Output" msgstr "Build Output" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Batch" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3543,59 +3591,59 @@ msgstr "Batch" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Complete Build Outputs" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Build outputs have been completed" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Scrap Build Outputs" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Build outputs have been scrapped" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancel Build Outputs" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Build outputs have been cancelled" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancel Build Outputs" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Build outputs have been cancelled" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Allocated" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Source Location" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Select the source location for the stock allocation" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3604,8 +3652,8 @@ msgstr "Select the source location for the stock allocation" msgid "Allocate Stock" msgstr "Allocate Stock" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Stock items allocated" @@ -3618,7 +3666,7 @@ msgstr "Stock items allocated" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Subscribed" @@ -3646,31 +3694,31 @@ msgstr "Parent part category" msgid "Subscribe to notifications for this category" msgstr "Subscribe to notifications for this category" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Assign Batch Code and Serial Numbers" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Assign Batch Code" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Choose Location" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Item Destination selected" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Part category default location selected" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Received stock location selected" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Default location selected" @@ -3683,60 +3731,60 @@ msgstr "Default location selected" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Set Location" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "Set Expiry Date" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Adjust Packaging" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Change Status" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Add Note" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Location" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Store at default location" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Store at default location" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Store at line item destination" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Store with already received stock" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3748,31 +3796,35 @@ msgstr "Store with already received stock" msgid "Batch Code" msgstr "Batch Code" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Enter batch code for received items" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Serial Numbers" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Enter serial numbers for received items" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "Expiry Date" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "Enter an expiry date for received items" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3780,23 +3832,19 @@ msgstr "Enter an expiry date for received items" msgid "Packaging" msgstr "Packaging" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Note" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3804,15 +3852,19 @@ msgstr "SKU" msgid "Received" msgstr "Received" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Receive Line Items" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "Items received" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Receive Items" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Item received into stock" @@ -3849,40 +3901,40 @@ msgstr "Enter serial numbers for new stock (or leave blank)" msgid "Stock Status" msgstr "Stock Status" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Add Stock Item" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Select the part to install" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "Confirm Stock Transfer" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Loading..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Move to default location" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Move" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3892,50 +3944,50 @@ msgstr "Move" msgid "In Stock" msgstr "In Stock" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Add" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Count" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Add Stock" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Stock added" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Remove Stock" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Stock removed" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transfer Stock" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Stock transferred" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3944,44 +3996,44 @@ msgstr "Stock transferred" msgid "Count Stock" msgstr "Count Stock" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Stock counted" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Change Stock Status" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Stock status changed" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Merge Stock" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Stock merged" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Assign Stock to Customer" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Stock assigned to customer" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Delete Stock Items" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Stock deleted" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Parent stock location" @@ -3993,7 +4045,7 @@ msgstr "Entries" msgid "List of entries to choose from" msgstr "List of entries to choose from" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4004,7 +4056,7 @@ msgstr "List of entries to choose from" msgid "Value" msgstr "Value" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "Label" @@ -4056,17 +4108,15 @@ msgstr "Internal server error" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "Already logged in" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Successfully logged out" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "There is a conflicting session on the server for this browser. Please logout of that first." #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4076,20 +4126,28 @@ msgstr "Successfully logged out" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Logged Out" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Successfully logged out" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Check your inbox for a reset link. This only works if you have an account. Check in spam too." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Reset failed" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Logged In" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Successfully logged in" @@ -4161,40 +4219,52 @@ msgstr "Are you sure you want to delete this item?" msgid "Latest serial number" msgstr "Latest serial number" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "Password could not be changed" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "The two password fields didn’t match" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "Password Changed" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "The password was set successfully. You can now login with your new password" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "Reset Password" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "Current Password" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "Enter your current password" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "New Password" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "Enter your new password" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "Confirm New Password" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "Confirm your new password" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "Confirm" @@ -4202,7 +4272,7 @@ msgstr "Confirm" msgid "Checking if you are already logged in" msgstr "Checking if you are already logged in" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "No selection" @@ -4214,8 +4284,8 @@ msgstr "No selection" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Login" @@ -4223,20 +4293,59 @@ msgstr "Login" msgid "Logging out" msgstr "Logging out" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "Multi-Factor Login" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "TOTP Code" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "Enter your TOTP or recovery code" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "Failed to set up MFA" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "MFA Setup Required" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "Add TOTP" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "Log off" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "Key invalid" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token invalid" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "You need to provide a valid key to set a new password. Check your inbox for a reset link." + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Password set" @@ -4244,6 +4353,14 @@ msgstr "Password set" msgid "Set new password" msgstr "Set new password" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "The desired new password" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "Send Password" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4252,6 +4369,18 @@ msgstr "Set new password" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "You need to provide a valid key." + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "Verify Email" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "Verify" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Error: {0}" @@ -4546,10 +4675,6 @@ msgstr "Scanned Items" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4664,61 +4789,85 @@ msgstr "Staff Access" msgid "Superuser" msgstr "Superuser" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "Secret" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "One-Time Password" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "Enter the TOTP code to ensure it registered correctly" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "Email Addresses" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "Single Sign On" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Not enabled" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Single Sign On is not enabled for this server" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "Multi-Factor Authentication" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "Access Tokens" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "Error while updating email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "Not Configured" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "Currently no email addresses are registered." + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "The following email addresses are associated with your account:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primary" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verified" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Unverified" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Add Email Address" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-Mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-Mail address" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Make Primary" @@ -4726,46 +4875,143 @@ msgstr "Make Primary" msgid "Re-send Verification" msgstr "Re-send Verification" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Add Email Address" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-Mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-Mail address" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "Error while adding email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Add Email" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Provider has not been configured" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Not configured" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "There are no social network accounts connected to this account." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "There are no providers connected to this account." + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "You can sign in to your account using any of the following providers" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "Remove Provider Link" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "View" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "No multi-factor tokens configured for this account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "Type" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "Last used at" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "Created at" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "Recovery Codes" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "Unused Codes" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "Used Codes" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "Error while registering recovery codes" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "TOTP" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "Time-based One-Time Password" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "One-Time pre-generated recovery codes" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "Add Token" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "Register TOTP Token" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "Error registering TOTP token" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "Enter your password" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token is used - no actions" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Revoke" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "No tokens configured" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Expiry" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Last Seen" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4838,6 +5084,14 @@ msgstr "Border Radius" msgid "Loader" msgstr "Loader" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "Reauthentication" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "OK" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5107,11 +5361,11 @@ msgstr "All units" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Barcodes" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Pricing" @@ -5123,19 +5377,19 @@ msgstr "Pricing" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Labels" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Reporting" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Build Orders" @@ -5209,7 +5463,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5217,7 +5471,7 @@ msgid "Custom Status" msgstr "Custom Status" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5246,7 +5500,7 @@ msgstr "Issued By" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5270,7 +5524,7 @@ msgstr "Created" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5287,7 +5541,7 @@ msgstr "Start Date" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5327,13 +5581,13 @@ msgid "Build Details" msgstr "Build Details" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Line Items" @@ -5342,7 +5596,7 @@ msgid "Incomplete Outputs" msgstr "Incomplete Outputs" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Allocated Stock" @@ -5378,131 +5632,131 @@ msgstr "Test Results" msgid "Edit Build Order" msgstr "Edit Build Order" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Add Build Order" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Cancel Build Order" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Order cancelled" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Cancel this order" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Hold Build Order" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Place this order on hold" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Order placed on hold" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Issue Build Order" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Issue this order" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Order issued" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Complete Build Order" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Mark this order as complete" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Order completed" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Issue Order" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Complete Order" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Build Order Actions" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Edit order" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Duplicate order" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Hold order" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Cancel order" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5518,28 +5772,28 @@ msgstr "Build Order" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Website" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Phone Number" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Email Address" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Default Currency" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5547,16 +5801,17 @@ msgstr "Default Currency" msgid "Supplier" msgstr "Supplier" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Manufacturer" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5570,7 +5825,7 @@ msgstr "Manufacturer" msgid "Customer" msgstr "Customer" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Company Details" @@ -5578,7 +5833,11 @@ msgstr "Company Details" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Supplied Parts" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Manufactured Parts" @@ -5586,24 +5845,20 @@ msgstr "Manufactured Parts" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Supplied Parts" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Assigned Stock" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Edit Company" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Delete Company" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Company Actions" @@ -5642,13 +5897,6 @@ msgstr "Manufacturer Part Details" msgid "Parameters" msgstr "Parameters" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Suppliers" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5711,13 +5959,13 @@ msgid "Supplier Part Details" msgstr "Supplier Part Details" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Received Stock" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Supplier Pricing" @@ -5877,7 +6125,7 @@ msgstr "Keywords" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Available Stock" @@ -5937,7 +6185,7 @@ msgstr "In Production" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Locked" @@ -5977,7 +6225,7 @@ msgid "Virtual Part" msgstr "Virtual Part" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -5998,8 +6246,8 @@ msgstr "Default Supplier" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Price Range" @@ -6065,8 +6313,8 @@ msgid "Edit Part" msgstr "Edit Part" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Add Part" @@ -6105,7 +6353,7 @@ msgid "Order Stock" msgstr "Order Stock" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Part Actions" @@ -6122,7 +6370,7 @@ msgid "No pricing data found for this part." msgstr "No pricing data found for this part." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Pricing Overview" @@ -6131,33 +6379,33 @@ msgid "Purchase History" msgstr "Purchase History" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Internal Pricing" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "BOM Pricing" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Variant Pricing" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Sale Pricing" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Sale History" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maximum" @@ -6168,7 +6416,7 @@ msgstr "Scheduled" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6231,20 +6479,15 @@ msgid "New Stocktake Report" msgstr "New Stocktake Report" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimum Value" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maximum Value" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Manufacturers" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6262,7 +6505,7 @@ msgstr "Total Price" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Component" @@ -6272,13 +6515,13 @@ msgstr "Component" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimum Price" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maximum Price" @@ -6339,65 +6582,65 @@ msgstr "Price Break" msgid "Price" msgstr "Price" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Refreshing pricing data" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Pricing data updated" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Failed to update pricing data" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Edit Pricing" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Pricing Category" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Override Pricing" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Overall Pricing" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Purchase Pricing" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Last Updated" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Pricing Not Set" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Pricing data has not been calculated for this part" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Pricing Actions" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Refresh" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Refresh pricing data" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Edit pricing data" @@ -6436,7 +6679,7 @@ msgid "Supplier Price" msgstr "Supplier Price" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Variant Part" @@ -6444,13 +6687,13 @@ msgstr "Variant Part" msgid "Edit Purchase Order" msgstr "Edit Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Add Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Supplier Reference" @@ -6460,24 +6703,24 @@ msgstr "Supplier Reference" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Completed Line Items" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Destination" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Order Currency" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6489,13 +6732,13 @@ msgstr "Total Cost" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Issue Date" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6504,37 +6747,37 @@ msgstr "Issue Date" msgid "Completion Date" msgstr "Completion Date" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Order Details" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Extra Line Items" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Issue Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Cancel Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Hold Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Complete Purchase Order" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Order Actions" @@ -6550,35 +6793,31 @@ msgid "Edit Return Order" msgstr "Edit Return Order" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Add Return Order" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Issue Return Order" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Cancel Return Order" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Hold Return Order" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Complete Return Order" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Customers" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Completed Shipments" @@ -6591,46 +6830,46 @@ msgstr "Completed Shipments" msgid "Edit Sales Order" msgstr "Edit Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Add Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Shipments" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Issue Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Cancel Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Hold Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "Ship Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "Ship this order?" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "Order shipped" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Complete Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Ship Order" @@ -7167,7 +7406,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Table Filters" @@ -7240,20 +7479,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Are you sure you want to delete the selected items?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "This action cannot be undone" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "Custom table filters are active" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Delete selected records" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Refresh data" @@ -7296,7 +7535,7 @@ msgid "Building" msgstr "Building" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7413,7 +7652,7 @@ msgid "Show consumable items" msgstr "Show consumable items" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Has Pricing" @@ -7492,7 +7731,7 @@ msgstr "Bill of materials cannot be edited, as the part is locked" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Assembly" @@ -7502,7 +7741,7 @@ msgid "Show active assemblies" msgstr "Show active assemblies" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Trackable" @@ -7596,7 +7835,7 @@ msgid "Show optional lines" msgstr "Show optional lines" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Testable" @@ -8250,7 +8489,7 @@ msgid "You are subscribed to notifications for this category" msgstr "You are subscribed to notifications for this category" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Include Subcategories" @@ -8333,7 +8572,7 @@ msgid "Show templates with choices" msgstr "Show templates with choices" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Has Units" @@ -8379,141 +8618,141 @@ msgstr "View Sales Order" msgid "Minimum stock" msgstr "Minimum stock" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filter by part active status" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filter by part locked status" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filter by assembly attribute" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Include parts in subcategories" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filter by component attribute" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Filter by testable attribute" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filter by trackable attribute" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filter by parts which have units" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Has IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filter by parts which have an internal part number" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Has Stock" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filter by parts which have stock" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filter by parts which have low stock" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Purchaseable" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filter by parts which are purchaseable" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Salable" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filter by parts which are salable" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtual" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filter by parts which are virtual" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Not Virtual" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "Is Template" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Filter by parts which are templates" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "Is Variant" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "Filter by parts which are variants" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "Is Revision" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Filter by parts which are revisions" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Has Revisions" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Filter by parts which have revisions" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Filter by parts which have pricing information" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Filter by parts which have available stock" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Filter by parts to which the user is subscribed" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "Has Stocktake" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Filter by parts which have stocktake information" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "Order selected parts" @@ -8598,7 +8837,7 @@ msgstr "View Parent Part" msgid "Part templates cannot be edited, as the part is locked" msgstr "Part templates cannot be edited, as the part is locked" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Select" @@ -8703,19 +8942,19 @@ msgstr "Description not available" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Confirm plugin activation" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Confirm plugin deactivation" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "The selected plugin will be activated" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "The selected plugin will be deactivated" @@ -8728,19 +8967,19 @@ msgstr "The selected plugin will be deactivated" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Deactivate" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Activate" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Activate selected plugin" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Update selected plugin" @@ -8748,76 +8987,76 @@ msgstr "Update selected plugin" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Uninstall" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Uninstall selected plugin" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Delete selected plugin configuration" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Activate Plugin" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "The plugin was activated" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "The plugin was deactivated" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Install plugin" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Install" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plugin installed successfully" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Uninstall Plugin" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Confirm plugin uninstall" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "The selected plugin will be uninstalled." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Plugin uninstalled successfully" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Plugin uninstalled successfully" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Delete Plugin" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Plugins reloaded" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Plugins were reloaded successfully" @@ -8825,7 +9064,7 @@ msgstr "Plugins were reloaded successfully" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Reload Plugins" @@ -8837,11 +9076,11 @@ msgstr "Reload Plugins" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Install Plugin" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Plugin Detail" @@ -8861,11 +9100,11 @@ msgstr "Plugin Detail" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Sample" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Installed" diff --git a/src/frontend/src/locales/es/messages.po b/src/frontend/src/locales/es/messages.po index 9e495fefbc..4358f0e793 100644 --- a/src/frontend/src/locales/es/messages.po +++ b/src/frontend/src/locales/es/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: es\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Detener el escaneado" msgid "Start scanning" msgstr "Comenzar a escanear" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Código de barras" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Escanear" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Escanear código de barras" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Esto eliminará el enlace al código de barras asociado" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Desvincular Código de Barras" @@ -244,13 +246,13 @@ msgstr "Imprimir reportes" msgid "Remove this row" msgstr "Eliminar esta fila" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "Usted será redirigido al proveedor para más acciones." #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "Este proveedor no está configurado completamente." +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "Mostrar el número de categorías de piezas a las que se ha suscrito" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Stock bajo" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "¿Eliminar la imagen asociada de este elemento?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Eliminar" @@ -574,6 +576,7 @@ msgstr "Eliminar" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Borrar" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Enviar" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Existen errores para uno o más campos del formulario" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Actualizar" @@ -880,7 +884,7 @@ msgstr "Actualizar" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Eliminar" @@ -898,154 +902,158 @@ msgstr "Eliminar" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Inicio de sesión correcto" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Se ha iniciado sesión con éxito" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Error al iniciar sesión" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Verifique su entrada e intente nuevamente." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Error al iniciar sesión" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Verifique su entrada e intente nuevamente." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Envío de correo exitoso" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Revisa tu bandeja de entrada para el enlace de inicio de sesión. Si tienes una cuenta, recibirás un enlace de inicio de sesión. Revisa también el correo no deseado." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Error al enviar el correo" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "O continúe con otros métodos" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nombre de usuario" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Tu nombre de usuario" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Contraseña" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Tu contraseña" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Contraseña" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Restablecer contraseña" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Tu contraseña" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Restablecer contraseña" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Enviaremos un enlace para el acceso - si usted está registrado" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Envíame un correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Usar nombre de usuario y contraseña" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Iniciar sesión" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Enviar correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registro exitoso" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Por favor, confirma tu dirección de correo electrónico para completar el registro" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Error de entrada de datos" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Se utilizará para una confirmación" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Repetir contraseña" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Repetir contraseña" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registro" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "O usar SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "¿No tiene una cuenta?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Volver al inicio de sesión" @@ -1058,7 +1066,7 @@ msgstr "Servidor" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "No clasificado" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Búsqueda..." @@ -1197,13 +1205,13 @@ msgstr "Iconos {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Buscar" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Cargando" @@ -1215,11 +1223,11 @@ msgstr "No hay resultados" msgid "modelRenderer entry required for tables" msgstr "entrada modelRenderer requerida para tablas" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "No hay entradas disponibles" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "Añadir fila nueva" @@ -1293,6 +1301,7 @@ msgstr "Procesando datos" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Se ha producido un error" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opciones" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Acciones de código de barras" @@ -1418,10 +1427,6 @@ msgstr "Acciones de código de barras" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Ver código de barras" @@ -1745,8 +1750,8 @@ msgstr "Ajustes de la cuenta" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Ajustes del sistema" @@ -1791,7 +1796,7 @@ msgstr "Cerrar sesión" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Piezas" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Stock" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Fabricación" @@ -1824,24 +1829,24 @@ msgstr "Fabricación" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Compras" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Ventas" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navegación" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Ver todas las notificaciones" msgid "You have no unread notifications." msgstr "No tienes notificaciones sin leer." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultados" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Introduce texto a buscar" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Actualizar resultados de búsqueda" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Proveedores" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opciones de búsqueda" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Búsqueda por expresión regular" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Búsqueda por palabra" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Clientes" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Introduce texto a buscar" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Actualizar resultados de búsqueda" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opciones de búsqueda" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Búsqueda por expresión regular" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Búsqueda por palabra" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Se ha producido un error durante la consulta de búsqueda" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Sin resultados" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "No hay resultados disponibles para consulta de búsqueda" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Información del complemento" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Ajustes del complemento" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configuración de complemento" @@ -2116,22 +2154,22 @@ msgstr "Modelo desconocido: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Plantilla de parámetro de pieza" msgid "Part Parameter Templates" msgstr "Plantillas de Parámetros de piezas" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Plantilla de prueba de pieza" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Plantillas de prueba de piezas" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Plantillas de prueba de piezas" msgid "Supplier Part" msgstr "Pieza de proveedor" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Piezas de proveedor" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Pieza de fabricante" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Piezas del fabricante" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Categoría de Pieza" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Categorías de Pieza" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Artículo de stock" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Artículo de stock" msgid "Stock Items" msgstr "Artículos de Stock" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Ubicación de existencias" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicaciones de existencias" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Tipos de ubicación de existencias" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Tipos de ubicaciones de existencias" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Histórico de existencias" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Históricos de existencias" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Construcción" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Construcciones" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Línea de construcción" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Línea de construcción" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Construir elemento" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Construir elementos" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Empresa" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Empresas" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Empresas" msgid "Project Code" msgstr "Código de proyecto" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Códigos de proyecto" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Códigos de proyecto" msgid "Purchase Order" msgstr "Pedido de compra" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Pedidos de compra" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Línea de pedido de compra" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Líneas de pedido de compra" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Líneas de pedido de compra" msgid "Sales Order" msgstr "Orden de venta" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Órdenes de venta" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Envío de orden de venta" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Envío de orden de venta" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Orden de devolución" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Órdenes de devolución" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Línea de pedido de retorno" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Líneas de pedido de retorno" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Dirección" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Direcciones" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contacto" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contactos" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Propietario" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Propietarios" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Propietarios" msgid "User" msgstr "Usuario" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Usuarios" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupo" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupos" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importar sesión" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importar Sesiones" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importar sesión" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importar Sesiones" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Plantilla de etiqueta" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Plantillas de etiqueta" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Plantilla de Reporte" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Plantillas de Reportes" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configuraciones de complemento" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Tipo de contenido" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Tipos de Contenido" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Tipo de contenido" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Tipos de Contenido" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "Lista de selección" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "Listas de Selección" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Envío" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inactivo" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Sin Stock" @@ -2536,10 +2575,10 @@ msgstr "Número de serie" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Número de serie" msgid "Quantity" msgstr "Cantidad" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "Acerca del proyecto InvenTree" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "Acerca del proyecto InvenTree" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Estado" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Salidas de Trabajo Completadas" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Salidas de Trabajo se han Completado" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Eliminar Salidas de Construcción" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Salidas de Construcción eliminadas" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancelar Salidas de Construcción" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Salidas de Construcción han sido canceladas" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancelar Salidas de Construcción" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Salidas de Construcción han sido canceladas" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Ubicación origen" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Seleccione la ubicación de origen para la asignación de stock" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Seleccione la ubicación de origen para la asignación de stock" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Artículos de stock seleccionados" @@ -3623,7 +3671,7 @@ msgstr "Artículos de stock seleccionados" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Suscrito" @@ -3651,31 +3699,31 @@ msgstr "Categoría superior de pieza" msgid "Subscribe to notifications for this category" msgstr "Suscribirse a las notificaciones de esta categoría" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Asignar código de lote y números de serie" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Asignar código de lote" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Elegir ubicación" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destino de artículo seleccionado" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Ubicación por defecto de la categoría de pieza eleccionada" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Seleccionada ubicación de existencias recibidas" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Ubicación por defecto seleccionada" @@ -3688,60 +3736,60 @@ msgstr "Ubicación por defecto seleccionada" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Establecer ubicación" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Ajustar empaquetado" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Cambiar Estado" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Añadir Nota" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Ubicación" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Guardar en la ubicación predeterminada" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Guardar en la ubicación predeterminada" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Almacenar en el destino del artículo de línea" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Guardar con cantidad ya recibida" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Guardar con cantidad ya recibida" msgid "Batch Code" msgstr "Código de lote" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Introduzca el código de lote para los artículos recibidos" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Números de serie" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Introduzca números de serie para los elementos recibidos" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Empaquetado" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Nota" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "Número De Referencia" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "Número De Referencia" msgid "Received" msgstr "Recibido" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Recibir ítem de línea" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Recibir Artículos" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Artículo recibido en existencias" @@ -3854,40 +3906,40 @@ msgstr "Introduzca números de serie para las nuevas existencias (o deje en blan msgid "Stock Status" msgstr "Estado de Existencias" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Añadir artículo de stock" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Selecciona la pieza a instalar" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "Confirmar transferencia de existencias" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Cargando..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Mover a la ubicación predeterminada" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Mover" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Mover" msgid "In Stock" msgstr "Disponible" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Añadir" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Contar" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Agregar existencias" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Existencias añadidas" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Eliminar existencias" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Existencias eliminadas" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transferir existencias" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Existencias transferidas" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "Existencias transferidas" msgid "Count Stock" msgstr "Contar existencias" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Existencias contadas" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Cambiar estado de existencias" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Estado de existencias cambiado" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Juntar existencias" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Existencias fusionadas" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Asignar existencias a cliente" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Existencias asignadas a cliente" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Eliminar existencias" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Existencias eliminadas" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Ubicación del stock padre" @@ -3998,7 +4050,7 @@ msgstr "Entradas" msgid "List of entries to choose from" msgstr "Lista de entradas entre las que elegir" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "Lista de entradas entre las que elegir" msgid "Value" msgstr "Valor" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "Etiqueta" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Desconectado" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Se cerró sesión correctamente" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Se cerró sesión correctamente" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Desconectado" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Se cerró sesión correctamente" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Restablecimiento fallido" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Conectado" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Sesión iniciada correctamente" @@ -4166,40 +4224,52 @@ msgstr "¿Está seguro de querer borrar este ítem?" msgid "Latest serial number" msgstr "Último número de serie" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "La contraseña fue establecida con éxito. Ahora puede iniciar sesión con su nueva contraseña" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Comprobando si ya ha iniciado sesión" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Ninguna selección" @@ -4219,8 +4289,8 @@ msgstr "Ninguna selección" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Iniciar sesión" @@ -4228,20 +4298,59 @@ msgstr "Iniciar sesión" msgid "Logging out" msgstr "Cerrando sesión" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token no válido" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Necesitas proporcionar un token válido para establecer una nueva contraseña. Revisa tu bandeja de entrada para un enlace de restablecimiento." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Contraseña establecida" @@ -4249,6 +4358,14 @@ msgstr "Contraseña establecida" msgid "Set new password" msgstr "Establecer nueva contraseña" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Establecer nueva contraseña" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Error: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Acceso de personal" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "No habilitado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Single Sign On no está habilitado para este servidor" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Autenticación multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "La autenticación multifactor no está configurada para su cuenta" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Las siguientes direcciones de correo electrónico están asociadas con tu cuenta:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Principal" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Sin verificar" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Añadir dirección de correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "Correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Dirección de correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Convertir en principal" @@ -4731,46 +4880,143 @@ msgstr "Convertir en principal" msgid "Re-send Verification" msgstr "Reenviar verificación" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Añadir dirección de correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "Correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Dirección de correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Añadir correo electrónico" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "El proveedor no ha sido configurado" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Sin configurar" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "No hay cuentas de redes sociales conectadas a esta cuenta." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Puede iniciar sesión en su cuenta utilizando cualquiera de las siguientes cuentas de terceros" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token usado - no hay acciones" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Revocar" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Ningún token configurado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Expiración" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Última Vez Visto" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Radio del borde" msgid "Loader" msgstr "Cargador" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Todas las unidades" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Códigos de barras" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Precios" @@ -5128,19 +5382,19 @@ msgstr "Precios" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiquetas" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Informes" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Emitido por" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Creado" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Detalles de construcción" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Elementos de línea" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Salidas incompletas" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Existencias asignadas" @@ -5383,131 +5637,131 @@ msgstr "Resultados de la Prueba" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Pedido completado" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Emitir pedido" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Completar Pedido" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Editar pedido" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Duplicar pedido" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Retener pedido" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Cancelar pedido" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Orden de construcción" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Sitio Web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Número de teléfono" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Dirección de correo electrónico" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Divisa predeterminada" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Divisa predeterminada" msgid "Supplier" msgstr "Proveedor" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabricante" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Fabricante" msgid "Customer" msgstr "Cliente" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Datos de la empresa" @@ -5583,7 +5838,11 @@ msgstr "Datos de la empresa" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Piezas suministradas" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Piezas fabricadas" @@ -5591,24 +5850,20 @@ msgstr "Piezas fabricadas" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Piezas suministradas" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Existencias asignadas" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Editar empresa" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Eliminar Empresa" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Acciones de empresa" @@ -5647,13 +5902,6 @@ msgstr "Detalles de pieza del fabricante" msgid "Parameters" msgstr "Parámetros" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Proveedores" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Detalles de pieza de proveedor" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Existencias recibidas" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Precios del Proveedor" @@ -5882,7 +6130,7 @@ msgstr "Palabras claves" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Existencias disponibles" @@ -5942,7 +6190,7 @@ msgstr "En producción" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Bloqueado" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Editar Pieza" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Añadir pieza" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Vista general de precios" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Historial de compras" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Precio Interno" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Precio de la Lista de Materiales (BOM)" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Precios variantes" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Precio de venta" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Historial de ventas" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "Programado" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Nuevo informe de inventario" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Fabricantes" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Precio total" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Componente" @@ -6277,13 +6520,13 @@ msgstr "Componente" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Precio mínimo" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Precio Máximo" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Refrescando datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Datos de precios actualizados" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Error al actualizar los datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Editar precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Categoría de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Última Actualización" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Precios no establecidos" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Los datos de precios no se han calculado para esta pieza" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Acciones de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Refrescar" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Refrescar datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Editar datos de precios" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Artículos de línea completados" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Fecha de emisión" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Fecha de emisión" msgid "Completion Date" msgstr "Fecha de Finalización" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Elementos extra de línea" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Clientes" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Envíos Completados" @@ -6596,46 +6835,46 @@ msgstr "Envíos Completados" msgid "Edit Sales Order" msgstr "Editar orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Agregar orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Envíos" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Emitir orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Cancelar orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Mantener orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Completar orden de venta" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Orden de envío" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filtro" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filtros de tabla" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "¿Confirma que desea eliminar los elementos seleccionados?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "Esta acción no se puede deshacer" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "Los filtros personalizados de tabla están activos" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Eliminar los registros seleccionados" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Refrescar datos" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "Estás suscrito a las notificaciones de esta categoría" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Incluir subcategorias" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "Ver orden de venta" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Incluye piezas en subcategorías" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtual" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Activar el complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Actualizar complemento seleccionado" @@ -8753,76 +8992,76 @@ msgstr "Actualizar complemento seleccionado" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Desinstalar el complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Eliminar la configuración del complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "El complemento fue activado" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "El complemento fue desactivado" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/es_MX/messages.po b/src/frontend/src/locales/es_MX/messages.po index 428abdc2dd..402680eb6e 100644 --- a/src/frontend/src/locales/es_MX/messages.po +++ b/src/frontend/src/locales/es_MX/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: es_MX\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Dejar de escanear" msgid "Start scanning" msgstr "Comenzar a escanear" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Código de barras" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Escanear" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Escanear código de barras" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Esto eliminará el enlace al código de barras asociado" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Desvincular Código de Barras" @@ -244,13 +246,13 @@ msgstr "Imprimir informes" msgid "Remove this row" msgstr "Eliminar esta fila" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "Usted será redirigido al proveedor para más acciones." #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "Este proveedor no está configurado completamente." +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "Mostrar el número de categorías de piezas a las que se ha suscrito" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Existencias bajas" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "¿Eliminar imagen asociada al artículo?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Eliminar" @@ -574,6 +576,7 @@ msgstr "Eliminar" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Borrar" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Aceptar" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Existen errores para uno o más campos del formulario" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Actualizar" @@ -880,7 +884,7 @@ msgstr "Actualizar" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Eliminar" @@ -898,154 +902,158 @@ msgstr "Eliminar" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Inicio de sesión exitoso" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Se ha iniciado sesión con éxito" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Error al iniciar sesión" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Verifique su entrada e intente nuevamente." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Error al iniciar sesión" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Verifique su entrada e intente nuevamente." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Envío de correo exitoso" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Revisa tu bandeja de entrada para el enlace de inicio de sesión. Si tienes una cuenta, recibirás un enlace de inicio de sesión. Revisa también el correo no deseado." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Error al enviar el correo" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "O continúe con otros métodos" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nombre de usuario" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Tu nombre de usuario" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Contraseña" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Tu contraseña" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Contraseña" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Restablecer contraseña" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Tu contraseña" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Restablecer contraseña" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Te enviaremos un enlace para iniciar sesión - si estás registrado" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Envíame un correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Usar nombre de usuario y contraseña" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Iniciar sesión" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Enviar correo electrónico" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registro exitoso" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Por favor, confirma tu dirección de correo electrónico para completar el registro" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Error de entrada" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Se utilizará para una confirmación" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Repetición de contraseña" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Repetir contraseña" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registro" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "O usar SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "¿No tiene una cuenta?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Volver al inicio de sesión" @@ -1058,7 +1066,7 @@ msgstr "Servidor" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "No clasificado" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Búsqueda..." @@ -1197,13 +1205,13 @@ msgstr "Iconos {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Buscar" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Cargando" @@ -1215,11 +1223,11 @@ msgstr "No hay resultados" msgid "modelRenderer entry required for tables" msgstr "entrada de modelRenderer requerida para tablas" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "No hay entradas disponibles" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "Añadir fila nueva" @@ -1293,6 +1301,7 @@ msgstr "Procesando datos" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Se ha producido un error" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opciones" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Acciones de código de barras" @@ -1418,10 +1427,6 @@ msgstr "Acciones de código de barras" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Ver código de barras" @@ -1745,8 +1750,8 @@ msgstr "Ajustes de la cuenta" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Ajustes del sistema" @@ -1791,7 +1796,7 @@ msgstr "Cerrar sesión" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Piezas" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Existencias" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Fabricación" @@ -1824,24 +1829,24 @@ msgstr "Fabricación" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Compras" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Ventas" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navegación" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Ver todas las notificaciones" msgid "You have no unread notifications." msgstr "No tienes notificaciones sin leer." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultados" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Introduce texto a buscar" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Actualizar resultados de búsqueda" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Proveedores" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opciones de búsqueda" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Búsqueda por expresión regular" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Búsqueda de palabras completas" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Clientes" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Introduce texto a buscar" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Actualizar resultados de búsqueda" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opciones de búsqueda" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Búsqueda por expresión regular" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Búsqueda de palabras completas" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Se ha producido un error durante la consulta de búsqueda" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Sin Resultados" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "No hay resultados disponibles para consulta de búsqueda" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Información del complemento" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Fecha" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Fecha" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Ajustes del complemento" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configuración de complemento" @@ -2116,22 +2154,22 @@ msgstr "Modelo desconocido: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Plantilla de parámetro de pieza" msgid "Part Parameter Templates" msgstr "Plantillas de Parámetros de piezas" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Plantilla de prueba de pieza" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Plantillas de prueba de piezas" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Plantillas de prueba de piezas" msgid "Supplier Part" msgstr "Pieza de proveedor" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Piezas de proveedor" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Pieza de fabricante" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Piezas del fabricante" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Categoría de Pieza" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Categorías de Pieza" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Artículo de stock" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Artículo de stock" msgid "Stock Items" msgstr "Artículos de Stock" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Ubicación de almacén" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicaciones de almacén" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Tipos de ubicación de existencias" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Tipos de ubicaciones de existencias" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Histórico de existencias" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Históricos de existencias" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Construcción" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Construcciones" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Línea de construcción" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Líneas de construcción" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Construir elemento" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Construir elementos" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Empresa" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Empresas" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Empresas" msgid "Project Code" msgstr "Código de proyecto" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Códigos de proyecto" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Códigos de proyecto" msgid "Purchase Order" msgstr "Pedido de compra" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Órdenes de compra" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Línea de pedido de compra" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Líneas de pedido de compra" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Líneas de pedido de compra" msgid "Sales Order" msgstr "Orden de venta" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Órdenes de venta" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Envío de orden de venta" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Envíos de pedidos de venta" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Orden de devolución" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Ordenes de devolución" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Línea de pedido de devolución" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Línea de pedido de devolución" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Dirección" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Direcciones" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contacto" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contactos" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Propietario" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Propietarios" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Propietarios" msgid "User" msgstr "Usuario" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Usuarios" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupo" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupos" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importar sesión" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importar sesiones" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importar sesión" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importar sesiones" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Plantilla de etiqueta" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Plantillas de etiqueta" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Plantilla de informe" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Plantillas de informe" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configuraciones de complemento" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Tipo de contenido" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Tipos de contenido" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Tipo de contenido" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Tipos de contenido" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "Lista de selección" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "Listas de Selección" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Envío" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inactivo" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Sin existencias" @@ -2536,10 +2575,10 @@ msgstr "Número de serie" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Número de serie" msgid "Quantity" msgstr "Cantidad" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Lote" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "Por favor, corrija los errores en las partes seleccionadas" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "Pedir Piezas" @@ -3509,7 +3564,7 @@ msgstr "Acerca del proyecto InvenTree" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "Acerca del proyecto InvenTree" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Lote" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Lote" msgid "Status" msgstr "Estado" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Salidas de construcción completadas" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Salidas de construcción se han completado" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Eliminar salidas de construcción" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Salidas de construcción eliminadas" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancelar salidas de construcción" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Las salidas de la construcción han sido canceladas" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancelar salidas de construcción" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Las salidas de la construcción han sido canceladas" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Ubicación origen" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Seleccione la ubicación de origen para la asignación de stock" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Seleccione la ubicación de origen para la asignación de stock" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Artículos de stock seleccionados" @@ -3623,7 +3671,7 @@ msgstr "Artículos de stock seleccionados" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Categoría superior de pieza" msgid "Subscribe to notifications for this category" msgstr "Suscribirse a las notificaciones de esta categoría" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Asignar código de lote y números de serie" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Asignar código de lote" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Elegir ubicación" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destino de artículo seleccionado" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Ubicación por defecto de la categoría de pieza eleccionada" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Seleccionada ubicación de existencias recibidas" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Ubicación por defecto seleccionada" @@ -3688,60 +3736,60 @@ msgstr "Ubicación por defecto seleccionada" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Establecer ubicación" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Ajustar empaquetado" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Cambiar Estado" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Añadir Nota" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Ubicación" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Guardar en la ubicación predeterminada" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Guardar en la ubicación predeterminada" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Almacenar en el destino del artículo de línea" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Guardar con cantidad ya recibida" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Guardar con cantidad ya recibida" msgid "Batch Code" msgstr "Código de lote" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Introduzca el código de lote para los artículos recibidos" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Números de serie" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Introduzca números de serie para los elementos recibidos" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Empaquetado" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Nota" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Recibido" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Recibir partidas" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Recibir artículos" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Artículo recibido en existencias" @@ -3854,40 +3906,40 @@ msgstr "Introduzca números de serie para las nuevas existencias (o deje en blan msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Añadir artículo de stock" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Selecciona la pieza a instalar" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "Confirmar transferencia de existencias" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Cargando..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Mover a la ubicación predeterminada" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Mover" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Mover" msgid "In Stock" msgstr "En Stock" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Agregar" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Contar" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Agregar existencias" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Existencias añadidas" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Eliminar existencias" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Existencias eliminadas" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transferir existencias" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Existencias transferidas" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "Existencias transferidas" msgid "Count Stock" msgstr "Contar existencias" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Existencias contadas" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Cambiar estado de existencias" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Estado de existencias cambiado" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Juntar existencias" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Existencias fusionadas" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Asignar existencias a cliente" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Existencias asignadas a cliente" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Eliminar existencias" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Existencias eliminadas" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Ubicación del stock padre" @@ -3998,7 +4050,7 @@ msgstr "Entradas" msgid "List of entries to choose from" msgstr "Lista de entradas entre las que elegir" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "Lista de entradas entre las que elegir" msgid "Value" msgstr "Valor" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "Etiqueta" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Desconectado" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Se cerró sesión correctamente" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Se cerró sesión correctamente" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Desconectado" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Se cerró sesión correctamente" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Revisa tu bandeja de entrada para un enlace de restablecimiento. Esto solo funciona si tienes una cuenta. Revisa el correo no deseado también." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Restablecimiento fallido" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Conectado" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Sesión iniciada correctamente" @@ -4166,40 +4224,52 @@ msgstr "¿Está seguro de querer eliminar este artículo?" msgid "Latest serial number" msgstr "Último número de serie" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "No se ha podido cambiar la contraseña" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "Contraseña Cambiada" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "La contraseña fue establecida con éxito. Ahora puede iniciar sesión con su nueva contraseña" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "Restablecer Contraseña" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "Nueva Contraseña" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "Introduzca su nueva contraseña" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "Confirmar Nueva Contraseña" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "Confirme su nueva contraseña" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "Confirmar" @@ -4207,7 +4277,7 @@ msgstr "Confirmar" msgid "Checking if you are already logged in" msgstr "Comprobando si ya ha iniciado sesión" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Ninguna selección" @@ -4219,8 +4289,8 @@ msgstr "Ninguna selección" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Ingresar" @@ -4228,20 +4298,59 @@ msgstr "Ingresar" msgid "Logging out" msgstr "Cerrando sesión" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token inválido" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Necesitas proporcionar un token válido para establecer una nueva contraseña. Revisa tu bandeja de entrada para un enlace de restablecimiento." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Contraseña establecida" @@ -4249,6 +4358,14 @@ msgstr "Contraseña establecida" msgid "Set new password" msgstr "Establecer nueva contraseña" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Establecer nueva contraseña" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Error: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Acceso de personal" msgid "Superuser" msgstr "Superusuario" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Cuentas de inicio de sesión único" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "No habilitado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Single Sign On no está habilitado para este servidor" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Autenticación multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "La autenticación multifactor no está configurada para su cuenta" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Las siguientes direcciones de correo electrónico están asociadas con tu cuenta:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primario" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Sin verificar" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Añadir dirección de correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "Correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Dirección de correo electrónico" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Convertir en principal" @@ -4731,46 +4880,143 @@ msgstr "Convertir en principal" msgid "Re-send Verification" msgstr "Reenviar verificación" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Añadir dirección de correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "Correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Dirección de correo electrónico" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Añadir correo electrónico" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "El proveedor no ha sido configurado" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Sin configurar" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "No hay cuentas de redes sociales conectadas a esta cuenta." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Puede iniciar sesión en su cuenta utilizando cualquiera de las siguientes cuentas de terceros" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token usado - no hay acciones" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Revocar" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Ningún token configurado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Expiración" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Última Vez Visto" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Radio del borde" msgid "Loader" msgstr "Cargador" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Todas las unidades" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Códigos de barras" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Precios" @@ -5128,19 +5382,19 @@ msgstr "Precios" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiquetas" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Informes" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Ordenes de Producción" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Emitido por" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Creado" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Detalles de construcción" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Partidas" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Salidas incompletas" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Existencias asignadas" @@ -5383,131 +5637,131 @@ msgstr "Resultados de la prueba" msgid "Edit Build Order" msgstr "Editar orden de construcción" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Añadir orden de construcción" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Cancelar orden de construcción" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Pedido cancelado" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Cancelar esta orden" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Poner en espera orden de construcción" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Poner este pedido en espera" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Pedido puesto en espera" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Emitir Orden de Construcción" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Emitir este pedido" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Orden emitida" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Completar Orden de Construcción" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Marcar pedido como completado" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Pedido completado" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Emitir pedido" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Completar Pedido" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Editar pedido" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Duplicar pedido" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Retener pedido" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Cancelar pedido" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Sitio web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Número de teléfono" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Dirección de correo electrónico" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Divisa predeterminada" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Divisa predeterminada" msgid "Supplier" msgstr "Proveedor" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabricante" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Fabricante" msgid "Customer" msgstr "Cliente" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Datos de la empresa" @@ -5583,7 +5838,11 @@ msgstr "Datos de la empresa" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Piezas suministradas" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Piezas fabricadas" @@ -5591,24 +5850,20 @@ msgstr "Piezas fabricadas" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Piezas suministradas" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Existencias asignadas" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Editar empresa" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Eliminar Empresa" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Acciones de empresa" @@ -5647,13 +5902,6 @@ msgstr "Detalles de pieza del fabricante" msgid "Parameters" msgstr "Parámetros" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Proveedores" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Detalles de pieza de proveedor" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Existencias recibidas" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Precios del Proveedor" @@ -5882,7 +6130,7 @@ msgstr "Palabras claves" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Existencias disponibles" @@ -5942,7 +6190,7 @@ msgstr "En producción" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Bloqueado" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Proveedor Predeterminado" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Rango de Precios" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Máximo" @@ -6173,7 +6421,7 @@ msgstr "Programado" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Mínimo" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Nuevo informe de inventario" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Valor Mínimo" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Valor Máximo" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Precio total" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Componente" @@ -6277,13 +6520,13 @@ msgstr "Componente" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Precio mínimo" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Precio Máximo" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "Precio" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Refrescando datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Datos de precios actualizados" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Error al actualizar los datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Editar precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Categoría de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Precio de Compra" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Última Actualización" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Precios no establecidos" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Los datos de precios no se han calculado para esta pieza" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Acciones de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Refrescar" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Refrescar datos de precios" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Editar datos de precios" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Divisa de Pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Costo Total" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Fecha de emisión" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Fecha de emisión" msgid "Completion Date" msgstr "Fecha de Finalización" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Detalles del pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Clientes" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Envíos" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "Orden de Venta de Envío" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "¿Enviar este pedido?" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "Pedido enviado" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filtro" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filtros de tabla" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "Esta acción no se puede deshacer" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "Los filtros personalizados de tabla están activos" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Mostrar artículos consumibles" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Tiene Precio" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Rastreable" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "Estás suscrito a las notificaciones de esta categoría" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Mostrar plantillas con opciones" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Tiene Unidades" @@ -8384,141 +8623,141 @@ msgstr "Ver orden de venta" msgid "Minimum stock" msgstr "Stock mínimo" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Tiene IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtual" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "Ordenar partes seleccionadas" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Activar el complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Actualizar complemento seleccionado" @@ -8753,76 +8992,76 @@ msgstr "Actualizar complemento seleccionado" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Desinstalar el complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Eliminar la configuración del complemento seleccionado" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "El complemento fue activado" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "El complemento fue desactivado" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/et/messages.po b/src/frontend/src/locales/et/messages.po index 41b3a812e5..764930f29a 100644 --- a/src/frontend/src/locales/et/messages.po +++ b/src/frontend/src/locales/et/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: et\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Estonian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Peata skännimine" msgid "Start scanning" msgstr "Alusta skännimist" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Vöötkood" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Skanneeri" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "See eemaldab lingi seotud vöötikoodile" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Linki ribakood" @@ -244,13 +246,13 @@ msgstr "Prindi aruanded" msgid "Remove this row" msgstr "Eemalda see rida" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Kas soovite eemaldada seotud pildi sellest üksusest?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Eemalda" @@ -574,6 +576,7 @@ msgstr "Eemalda" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Puhasta" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Esita" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Ühes või mitmes vormiväljas on vigu" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Värskenda" @@ -880,7 +884,7 @@ msgstr "Värskenda" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Kustuta" @@ -898,154 +902,158 @@ msgstr "Kustuta" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Login õnnestus" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Sisselogimine õnnestus" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Sisselogimine ebaõnnestus" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Kontrollige oma sisestust ja proovige uuesti." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Sisselogimine ebaõnnestus" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Kontrollige oma sisestust ja proovige uuesti." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "E-kirja kohaletoimetamine õnnestus" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Kontrollige oma postkasti sisselogimislingi saamiseks. Kui teil on konto, saate sisselogimislingi. Kontrollige ka rämpsposti kausta." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "E-kirja kohaletoimetamine ebaõnnestus" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Või jätkake teiste meetoditega" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Kasutajanimi" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Kasutajanimi" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Parool" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Salasõna" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Parool" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Lähtesta parool" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Salasõna" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Lähtesta parool" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-post" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Saadame teile sisselogimislingi – kui olete registreeritud" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Saada mulle e-kiri" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Kasutage kasutajanime ja parooli" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Logi Sisse" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Saada kiri" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registreerumine õnnestus" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Palun kinnitage oma e-posti aadress, et registreerimine lõpule viia" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Sisestustõrge" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Seda kasutatakse kinnitamiseks" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Korda parooli" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Korrake salasõna" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registreeru" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Või kasuta SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Kas teil pole kontot?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Mine tagasi sisselogimislehele" @@ -1058,7 +1066,7 @@ msgstr "Võõrustaja" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Liigitamata" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Otsing..." @@ -1197,13 +1205,13 @@ msgstr "{0} ikoonid" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Otsing" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Laadimine" @@ -1215,11 +1223,11 @@ msgstr "Tulemusi pole" msgid "modelRenderer entry required for tables" msgstr "modelRenderer sissekanne on tabelite jaoks kohustuslik" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Sissekanded puuduvad" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Andmete töötlemine" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Ilmnes viga" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Valikud" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Vöötkoodi Toimingud" @@ -1418,10 +1427,6 @@ msgstr "Vöötkoodi Toimingud" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Konto seaded" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "Logi välja" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Tootmine" @@ -1824,24 +1829,24 @@ msgstr "Tootmine" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Ostmine" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Müük" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigeerimine" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Vaata kõiki teavitusi" msgid "You have no unread notifications." msgstr "Sul pole lugemata teated." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Lisage otsitav tekst" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Otsingu valikud" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Tarnijaid" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex otsing" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Kliendid" + #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Lisage otsitav tekst" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Otsingu valikud" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex otsing" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Otsingu päringu ajal ilmnes viga" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Otsingu päringu jaoks tulemusi pole saadaval" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Kuupäev" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Kuupäev" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Aadress" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Aadressid" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontaktid" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Omanik" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Omanikud" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Omanikud" msgid "User" msgstr "Kasutaja" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Kasutajad" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Rühm" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Rühmad" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Impordi sessioon" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Impordi sessioone" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Impordi sessioon" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Impordi sessioone" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Mitteaktiivne" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "Seerianumber" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Seerianumber" msgid "Quantity" msgstr "Kogus" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Staatus" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Ehitustulemused on valmis" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Ehitustulemused on tühistatud" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Ehitustulemused on tühistatud" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Ehitustulemused on tühistatud" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Eraldatud" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Valige laoseisu eraldamise alguskoht" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Valige laoseisu eraldamise alguskoht" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Selle plugina jaoks ei ole sisu esitatud" @@ -3623,7 +3671,7 @@ msgstr "Selle plugina jaoks ei ole sisu esitatud" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Vali asukoht" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Osakategooria vaikimisi asukoht valitud" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Kättesaadud varude asukoha valitud" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Muuda staatust" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Lisa märkus" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Asukoht" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Salvestage liinieleme kohas" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Pood juba saadud varudega" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Pood juba saadud varudega" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Pakkimine" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Märkus" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "Tootekood" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "Tootekood" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Üksus on laoseisu vastu võetud" @@ -3854,40 +3906,40 @@ msgstr "Sisestage uued kaubanduslikud numbrikoodid (või jätke tühjaks)" msgid "Stock Status" msgstr "Laoseis" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Laadimine..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Liiguta" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Liiguta" msgid "In Stock" msgstr "Laos" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Lisa" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Kogus" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Väärtus" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Edukalt välja logitud" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Edukalt välja logitud" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Edukalt välja logitud" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Kontrollige oma postkasti lähtestamise lingi jaoks. See toimib ainult siis, kui teil on konto. Vaadake ka rämpsposti." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "Kas olete kindel, et soovite selle üksuse kustutada?" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Parool määrati edukalt. Nüüd saate sisse logida oma uue parooliga" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Kontrollige, kas olete juba sisse logitud" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Logi sisse" @@ -4228,20 +4298,59 @@ msgstr "Logi sisse" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" -#: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Teil peab olema kehtiv märkasõna, et saaks uue parooli määrata. Vaata oma postkasti parooli taastamise lingi jaoks." +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + +#: src/pages/Auth/ResetPassword.tsx:31 +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." + +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Ühekordsed sisselogimiskontod" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Sisselogimine pole sellele serverile lubatud" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Mitmefaktoriline autentimine pole teie kontole konfigureeritud" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Kontrollkood" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Teie kontoga on seotud järgmised e-posti aadressid:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Peamine" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Kinnitatud" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Kinnitamata" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Lisa e-posti aadress" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-post" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-posti aadress" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Määra peamiseks" @@ -4731,46 +4880,143 @@ msgstr "Määra peamiseks" msgid "Re-send Verification" msgstr "Saada kinnitus uuesti" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Lisa e-posti aadress" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-post" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-posti aadress" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Lisa E-mail" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Pakkuja pole seadistatud" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Seadistamata" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Sellele kontole pole ühendatud ühtegi sotsiaalmeedia kontot." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Saate sisse logida oma kontole kasutades mõnda järgmistest kolmandatest osapooltest kontodest" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token kasutatakse - ühtegi toimingut pole" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Tühista" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Ühtegi kontrollkoodi pole seadistatud" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Aegumine" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Viimati nähtud" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Kontrollkood" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Piirjoone kumerus" msgid "Loader" msgstr "Laadija" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Kõik üksused" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Hind" @@ -5128,19 +5382,19 @@ msgstr "Hind" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Sildid" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Aruanded" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Tühista see tellimus" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Märgi see tellimus lõpetatuks" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Muuda tellimust" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Tee tellimusest koopia" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Tühista tellimus" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Veebileht" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Telefoninumber" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-posti aadress" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Vaikimisi valuuta" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Vaikimisi valuuta" msgid "Supplier" msgstr "Tarnija" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Tootja" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Tootja" msgid "Customer" msgstr "Klient" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Muuda ettevõtet" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Kustuta ettevõte" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Ettevõtte toimingud" @@ -5647,13 +5902,6 @@ msgstr "Tootja osa üksikasjad" msgid "Parameters" msgstr "Parameetrid" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Tarnijaid" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "Märksõnad" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Saadaval laos" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Vaiketarnija" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Hinnavahemik" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Muuda osa" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Lisa osa" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Selle osa kohta andmeid hinnakujunduse kohta ei leitud." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maksimum" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Miinimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimaalne väärtus" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maksimaalne hind" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponent" @@ -6277,13 +6520,13 @@ msgstr "Komponent" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimaalne hind" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maksimaalne hind" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "Hind" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Hinnakategooria" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Täida ostutellimus" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Kliendid" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Tabeli filtrid" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Kas olete kindel, et soovite kustutada valitud elemendid?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Kustutage valitud kirjed" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "Tükkide loendit ei saa redigeerida, kuna osa on lukustatud" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Jälgitav" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Kuva valikuga mallid" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtreeri osa aktiivse staatuse järgi" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filtreeri vastavalt osa lukustatud seisundile" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtreeri koostise atribuudi järgi" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Kaasa osad alamkategooriatesse" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtreeri komponendi atribuudi järgi" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Filtreeri testitava atribuudi järgi" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtreerige jälgitava atribuudi järgi" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtreeri osade järgi, millel on ühikud" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtreeri osade järgi, millel on siseosade number" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filtreeri osade järgi, millel on laoseis" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtreeri osade järgi, millel on vähe laoseisu" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtreeri osade järgi, mis on ostetavad" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtreeri osade järgi, mis on müügiloaga" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtreeri osade järgi, mis on virtuaalsed" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Filtreeri osade järgi, mis on mallid" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Filtreeri osade järgi, mis on revisioonid" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Filtreeri osade järgi, millel on revisioonid" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Filtreeri osade järgi, millel on hinnateave" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Filtreeri osade järgi, millel on laoseis saadaval" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Filtreeri osade järgi, millele kasutaja on tellinud" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Filtreeri osade järgi, millel on inventuuriteave" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "Osa malle ei saa redigeerida, kuna osa on lukus" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "Kirjeldust pole saadaval" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Kinnitage pistikmooduli aktiveerimine" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Kinnitage pistikmoodulite deaktiveerimine" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "Valitud pistiklahendus aktiveeritakse" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "Valitud pistiklahendus inaktiveeritakse" @@ -8733,19 +8972,19 @@ msgstr "Valitud pistiklahendus inaktiveeritakse" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Lülita välja" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Aktiveeri" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Eemalda" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Aktiveeri plugin" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Paigalda plugin" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Paigalda" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plugin paigaldamine õnnestus" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Eemalda plugin" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Kinnita plugina eemaldamine" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "Valitud pistikprogramm eemaldatakse." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Plugin desinstall on õnnestunud" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Plugin desinstall on õnnestunud" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Kustuta plugin" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Kui kustutate selle pistikprogrammi seadistuse, eemaldatakse kõik seotud sätted ja andmed. Olete kindel, et soovite selle pistikprogrammi kustutada?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Plugin on uuesti laaditud" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Pluginid said edukalt taaskäivitatud" @@ -8830,7 +9069,7 @@ msgstr "Pluginid said edukalt taaskäivitatud" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Laadi pluginad uuesti" @@ -8842,11 +9081,11 @@ msgstr "Laadi pluginad uuesti" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Paigalda plugin" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Plugina üksikasjad" @@ -8866,11 +9105,11 @@ msgstr "Plugina üksikasjad" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Näidis" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Paigaldatud" diff --git a/src/frontend/src/locales/fa/messages.po b/src/frontend/src/locales/fa/messages.po index 30f8d06051..1a2c194593 100644 --- a/src/frontend/src/locales/fa/messages.po +++ b/src/frontend/src/locales/fa/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fa\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Persian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/fi/messages.po b/src/frontend/src/locales/fi/messages.po index 06217e6ac6..558ca196dc 100644 --- a/src/frontend/src/locales/fi/messages.po +++ b/src/frontend/src/locales/fi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/fr/messages.po b/src/frontend/src/locales/fr/messages.po index f2f8a24474..ea301f47b2 100644 --- a/src/frontend/src/locales/fr/messages.po +++ b/src/frontend/src/locales/fr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -50,52 +50,54 @@ msgstr "Arrêter le scan" msgid "Start scanning" msgstr "Commencer le scan" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Code-barres" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Scanner" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Scanner le code-barres" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Ceci supprimera le lien vers le code-barres associé" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Délier le code-barre" @@ -244,13 +246,13 @@ msgstr "Imprimer les rapports" msgid "Remove this row" msgstr "Supprimer cette ligne" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Stock faible" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Supprimer l'image associée de cet élément ?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Supprimer" @@ -574,6 +576,7 @@ msgstr "Supprimer" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Effacer" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Envoyer" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Il existe des erreurs pour un ou plusieurs champs du formulaire" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Mise à jour" @@ -880,7 +884,7 @@ msgstr "Mise à jour" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Supprimer" @@ -898,154 +902,158 @@ msgstr "Supprimer" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Connexion réussie" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Connexion réussie" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Login invalide" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Vérifiez votre saisie et réessayez." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Login invalide" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Vérifiez votre saisie et réessayez." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Envoi du mail réussi" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Vérifiez votre boîte de réception pour le lien de connexion. Si vous avez un compte, vous recevrez un lien de connexion. Vérifiez également dans le courrier indésirable." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "L'envoi du mail a échoué" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Ou continuer avec d'autres méthodes" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nom d'utilisateur" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Votre nom d'utilisateur" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Mot de passe" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Mot de passe" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Mot de passe" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Réinitialiser le mot de passe" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Mot de passe" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Réinitialiser le mot de passe" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Nous vous enverrons un lien pour vous connecter - si vous êtes déjà inscrit" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Envoyez-moi un e-mail" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Utilisez votre nom d'utilisateur et votre mot de passe" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Se connecter" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Envoyer l'e-mail" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Inscription réussie" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Veuillez confirmer votre adresse e-mail pour finaliser l'inscription" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Erreur d'entrée" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Ceci sera utilisé pour une confirmation" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Répétition du mot de passe" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Répéter le mot de passe" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "S'enregistrer" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Ou utiliser SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Pas encore de compte ?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Retourner au login" @@ -1058,7 +1066,7 @@ msgstr "Serveur" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Non catégorisé" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Rechercher..." @@ -1197,13 +1205,13 @@ msgstr "Icônes {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Rechercher" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Chargement" @@ -1215,11 +1223,11 @@ msgstr "Aucun résultat trouvé" msgid "modelRenderer entry required for tables" msgstr "Entrée \"modelRenderer\" requise pour les tables" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Aucune entrée n'est disponible" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Traitement des données" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Une erreur s'est produite" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Options" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Actions de code-barres" @@ -1418,10 +1427,6 @@ msgstr "Actions de code-barres" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Paramètres du compte" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Les paramètres du système" @@ -1791,7 +1796,7 @@ msgstr "Se déconnecter" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Composants" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Stock" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Achat en cours" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Ventes" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigation" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Voir toutes les notifications" msgid "You have no unread notifications." msgstr "Vous n'avez pas de notifications non lues." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "résultats" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Entrez un texte à rechercher" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Options de recherche" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Fournisseurs" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Recherche par regex" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Recherche par mot entier" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Clients" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Entrez un texte à rechercher" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Options de recherche" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Recherche par regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Recherche par mot entier" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Une erreur s'est produite lors de la recherche" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Aucun résultat" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Aucun résultat disponible pour la requête" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Informations sur le plugin" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Date" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Date" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Chemin d'installation" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Intégré" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Paramètres du plug-in" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configuration du plugin" @@ -2116,22 +2154,22 @@ msgstr "Modèle inconnu : {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Modèle de paramètre de pièce" msgid "Part Parameter Templates" msgstr "Modèles de paramètres de pièce" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Modèle de test de pièce" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Modèles de test de pièces" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Modèles de test de pièces" msgid "Supplier Part" msgstr "Pièce fournisseur" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Pièces du fournisseur" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Pièces du fabricant" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Pièces du fabricant" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Catégorie de composant" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Catégories de composants" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Article en stock" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Article en stock" msgid "Stock Items" msgstr "Articles en stock" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Emplacement du stock" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Emplacements de stock" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Emplacements du stock" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Emplacements des stocks" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Historique du stock" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Historique du stock" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Construction" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Construction" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Chaîne d'assemblage" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Chaîne d'assemblage" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Construire un élément" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Construire des éléments" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Société" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Sociétés" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Sociétés" msgid "Project Code" msgstr "Code du projet" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Codes du projet" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Codes du projet" msgid "Purchase Order" msgstr "Commande d’achat" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Ordres d'achat" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Ligne de commande d'achat" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Lignes de commande d'achat" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Lignes de commande d'achat" msgid "Sales Order" msgstr "Ventes" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Ordres de vente" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Expédition de la commande" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Expéditions de la commande" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Retour de commande" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Retours" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Ligne de retour de commande" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Ligne de retour de commande" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresses" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contact" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contacts" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Propriétaire" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Propriétaires" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Propriétaires" msgid "User" msgstr "Utilisateur" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Utilisateurs" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Groupes" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Groupes" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importer la session" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importer les sessions" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importer la session" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importer les sessions" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Modèle d'étiquette" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Modèles d'étiquettes" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Modèle de rapport" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Modèles des rapports" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configurations des plugins" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Type de contenu" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Types de contenu" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Type de contenu" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Types de contenu" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Livraison" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inactif" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Aucun stock" @@ -2536,10 +2575,10 @@ msgstr "Numéro de série" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Numéro de série" msgid "Quantity" msgstr "Quantité" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Sorties de Fabrication terminées" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Les fabrication ont été achevé" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Éliminer les résultats de construction" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Les résultats de construction ont été supprimé" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Annuler les résultats de construction" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Les résultats de construction ont été annulés" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Annuler les résultats de construction" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Les résultats de construction ont été annulés" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Allouée" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Emplacement d'origine" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Sélectionnez l'emplacement de la source pour l'allocation du stock" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Sélectionnez l'emplacement de la source pour l'allocation du stock" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Éléments du stock alloués" @@ -3623,7 +3671,7 @@ msgstr "Éléments du stock alloués" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Catégorie de pièce parente" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Choisir l'emplacement" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destination de l'élément sélectionné" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Emplacement par défaut de la catégorie" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Emplacement de stock reçu" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Emplacement par défaut" @@ -3688,60 +3736,60 @@ msgstr "Emplacement par défaut" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Définir l'emplacement" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Ajuster le conditionnement" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Changer le statut" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Ajouter une note" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Emplacement" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Stocker à l'emplacement par défaut" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Stocker à l'emplacement par défaut" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Stocker à la destination de l’article" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Stocker avec le stock déjà reçu" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Stocker avec le stock déjà reçu" msgid "Batch Code" msgstr "Barre-code" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Numéros de Série" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "Date d'expiration" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Conditionnement" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Note" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Réceptionnée" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Articles reçus" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Articles reçus" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Article reçu en stock" @@ -3854,40 +3906,40 @@ msgstr "Entrez les numéros de série pour le nouveau stock (ou laisser vide)" msgid "Stock Status" msgstr "État du stock" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Ajouter un article en stock" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Sélectionnez la partie à installer" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Chargement..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Déplacer vers l'emplacement par défaut" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Déplacer" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Déplacer" msgid "In Stock" msgstr "En Stock" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Ajouter" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Compter" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Ajouter du stock" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Supprimer du stock" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transférer le stock" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Compter le stock" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Changer l'état du stock" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Fusionner le stock" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Supprimer l'article du stock" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Localisation Parente du stock" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Valeur" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Déconnexion" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Déconnexion réussie !" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Déconnexion réussie !" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Déconnexion" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Déconnexion réussie !" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Vérifiez votre boîte de réception pour un lien de réinitialisation. Cela ne fonctionne que si vous avez un compte. Vérifiez également dans le spam." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Échec de la réinitialisation" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Connecté" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Vous êtes connecté(e)" @@ -4166,40 +4224,52 @@ msgstr "Êtes-vous certain de vouloir supprimer cet élément?" msgid "Latest serial number" msgstr "Dernier numéro de série" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Votre mot de passe a été modifié avec succès. Vous pouvez maintenant vous connecter avec votre nouveau mot de passe" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Vérifier si vous êtes déjà connecté" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Aucune sélection" @@ -4219,8 +4289,8 @@ msgstr "Aucune sélection" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Se connecter" @@ -4228,20 +4298,59 @@ msgstr "Se connecter" msgid "Logging out" msgstr "Déconnexion en cours" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Jeton invalide" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Vous devez fournir un jeton valide pour définir un nouveau mot de passe. Vérifiez votre boîte de réception pour un lien de réinitialisation." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Mot de passe défini" @@ -4249,6 +4358,14 @@ msgstr "Mot de passe défini" msgid "Set new password" msgstr "Définir un nouveau mot de passe" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Définir un nouveau mot de passe" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Erreur : {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Accès du personnel" msgid "Superuser" msgstr "Super-utilisateur" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Comptes d'authentification unique" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Non activé" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "L'authentification unique n'est pas activée pour ce serveur" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifacteur" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "L'authentification multifacteurs n'est pas configurée pour votre compte" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Jeton" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Les adresses de messagerie suivantes sont associées à votre compte :" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Principale" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Vérifiée" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Non vérifiée" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Ajouter une adresse email" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Adresse e-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Rendre Principale" @@ -4731,46 +4880,143 @@ msgstr "Rendre Principale" msgid "Re-send Verification" msgstr "Renvoyer le message de vérification" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Ajouter une adresse email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Adresse e-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Ajouter l’e-mail" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Le fournisseur n'a pas été configuré" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Non configuré" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Aucun compte de réseau social n'est connecté à ce compte." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Vous pouvez vous connecter à votre compte, utilisez l’un des comptes tiers suivants" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Le jeton est utilisé - aucune action" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Révoquer" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Aucun jeton configuré" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Expiré" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Dernière visite" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Jeton" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Rayon de bordure" msgid "Loader" msgstr "Chargeur" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Toutes les unités" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Code-barres" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Tarifs" @@ -5128,19 +5382,19 @@ msgstr "Tarifs" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Étiquettes" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Rapports" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Ordres de fabrication" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Émis par" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Créé" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Détails de fabrication" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Éléments de la ligne" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Stock alloué" @@ -5383,131 +5637,131 @@ msgstr "Résultats des Tests" msgid "Edit Build Order" msgstr "Éditer l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Ajouter un ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Annuler l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Commande annulée" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Annuler cette commande" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Suspendre l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Mettre cet ordre en suspens" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Cet ordre a été mis en suspens" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Compléter l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Marquer cet ordre comme complété" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Ordre complété" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Problème dans l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Compléter l'ordre" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Actions de l'ordre de fabrication" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Modifier la commande" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Dupliquer la commande" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Retenir la commande" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Annuler la commande" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Site web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Numéro de téléphone" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Adresse email" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Devise par défaut" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Devise par défaut" msgid "Supplier" msgstr "Fournisseur" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabricant" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Fabricant" msgid "Customer" msgstr "Client" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Détails de l'entreprise" @@ -5583,7 +5838,11 @@ msgstr "Détails de l'entreprise" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Pièce fournisseur" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Pièces du fabricant" @@ -5591,24 +5850,20 @@ msgstr "Pièces du fabricant" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Pièce fournisseur" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Stock attribué" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Modifier la société" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Supprimer la société" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Actions de la société" @@ -5647,13 +5902,6 @@ msgstr "Détails de la pièce du fabricant" msgid "Parameters" msgstr "Paramètres" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Fournisseurs" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Détails de la pièce du fournisseur" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Stock reçu" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "Mots-clés" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Stock disponible" @@ -5942,7 +6190,7 @@ msgstr "En Production" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Verrouillé" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Pièce virtuelle" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Fournisseur par Défaut" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Échelle des prix" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Modifier la pièce" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Ajouter Pièce" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Prix du tarif" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Historique des ventes" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maximum" @@ -6173,7 +6421,7 @@ msgstr "Planifié" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Valeur minimum" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Valeur maximale" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Prix total" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Composant" @@ -6277,13 +6520,13 @@ msgstr "Composant" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Prix Minimum" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Prix Maximum" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "Prix" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Modifier la tarification" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Catégorie de tarif" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Tarif d'achat" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Dernière mise à jour" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Tarification non définie" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Actualiser" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Rafraîchir les données de tarification" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Modifier les données de tarification" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Destination" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Devise de la commande" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Coût total" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Modifier l'ordre de retour" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Ajouter un ordre de retour" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Émettre un ordre de retour" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Annuler l'ordre de retour" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Suspendre l'ordre de retour" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Clients" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Livraisons réalisées" @@ -6596,46 +6835,46 @@ msgstr "Livraisons réalisées" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Livraisons" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filtrer" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filtres des tables" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Êtes-vous sûr de vouloir supprimer les éléments sélectionnés ?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Supprimer les enregistrements sélectionnés" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Actualiser les données" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Construire" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Possède un Tarif" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Testable" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuel" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "Est une révision" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Possède des révisions" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Sélectionner" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Activer le plugin sélectionné" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Mettre à jour le plugin sélectionné" @@ -8753,76 +8992,76 @@ msgstr "Mettre à jour le plugin sélectionné" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Désinstaller" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Désinstaller le plugin sélectionné" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Installer le plugin" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Installer" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plugin installé avec succès" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Désinstaller le plugin" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "Le plugin sélectionné sera désinstallé." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Plugin désinstallé avec succès" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Plugin désinstallé avec succès" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Supprimer le plugin" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/he/messages.po b/src/frontend/src/locales/he/messages.po index aab928f038..7e421dc91f 100644 --- a/src/frontend/src/locales/he/messages.po +++ b/src/frontend/src/locales/he/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: he\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -50,52 +50,54 @@ msgstr "הפסק לסרוק" msgid "Start scanning" msgstr "התחל לסרוק" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "בחר רמת תיקון שגיאות" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "פעולה זו תסיר את הקישור לברקוד המשויך" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "בטל קישור של ברקוד" @@ -244,13 +246,13 @@ msgstr "הדפס דוחות" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "מלאי נמוך" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "האם להסיר את התמונה המשויכת מפריט זה?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "הסר" @@ -574,6 +576,7 @@ msgstr "הסר" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "נקה" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "שלח" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "קיימות שגיאות עבור שדה טופס אחד או יותר" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "עדכן" @@ -880,7 +884,7 @@ msgstr "עדכן" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "מחק" @@ -898,154 +902,158 @@ msgstr "מחק" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "התחברות מוצלחת" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "התחברת בהצלחה" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "הכניסה נכשלה" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "בדוק את הקלט שלך ונסה שוב." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "הכניסה נכשלה" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "בדוק את הקלט שלך ונסה שוב." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "הדואר נשלח בהצלחה" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "בדוק/י בתיבת הדואר הנכנס שלך את קישור הכניסה. אם יש לך חשבון, תקבל/י קישור כניסה. מומלץ לבדוק גם ספאם." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "שליחת הדואר נכשלה" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "או להמשיך בשיטות אחרות" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "שם משתמש" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "שם המשתמש שלך" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "סיסמה" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "הסיסמה שלך" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "סיסמה" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "איפוס סיסמה" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "הסיסמה שלך" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "איפוס סיסמה" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "אימייל" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "אנו נשלח לך קישור לכניסה - אם את/ה רשום/ה" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "שלח לי מייל" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "השתמש בשם משתמש וסיסמה" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "התחבר" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "שלח אימייל" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "הרישום עבר בהצלחה" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "אנא אשר/י את כתובת הדוא\"ל שלך כדי להשלים את ההרשמה" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "שגיאת קלט" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "זה ישמש לאישור" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "חזרה על הסיסמה" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "חזור/י על הסיסמה" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "הרשמה" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "או השתמש ב - SSO [שיטת הזדהות אחת Single Sign On]" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "אין לך חשבון?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "חזור/י לכניסה" @@ -1058,7 +1066,7 @@ msgstr "מארח" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "לא מסווג" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "חפש..." @@ -1197,13 +1205,13 @@ msgstr "{0} סמלים" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "חפש" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "טוען" @@ -1215,11 +1223,11 @@ msgstr "לא נמצאו תוצאות" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "אין ערכים זמינים" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "מעבד נתונים" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "אירעה שגיאה" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "פעולות ברקוד" @@ -1418,10 +1427,6 @@ msgstr "פעולות ברקוד" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "הגדרות מערכת" @@ -1791,7 +1796,7 @@ msgstr "התנתק" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "פריטים" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "מלאי" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "רכישה" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "מכירות" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "ניווט" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "הצג את כל ההתראות" msgid "You have no unread notifications." msgstr "אין לך התראות שלא נקראו." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "תוצאות" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "הזן טקסט חיפוש" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "אפשרויות חיפוש" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "חיפוש רגולרי" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "חיפוש מילה שלמה" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "הזן טקסט חיפוש" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "אפשרויות חיפוש" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "חיפוש רגולרי" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "חיפוש מילה שלמה" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "אירעה שגיאה במהלך שאילתת החיפוש" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "אין תוצאות זמינות עבור שאילתת חיפוש" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "תצורת תוסף" @@ -2116,22 +2154,22 @@ msgstr "דגם לא ידוע: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "תבנית פרמטר פריט" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "קטגוריית פריט" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "קטגוריית פריטים" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "פריט במלאי" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "פריט במלאי" msgid "Stock Items" msgstr "פריטים במלאי" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "מיקום מלאי" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "מיקומי מלאי" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "סוג מיקום מלאי" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "סוגי מיקום מלאי" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "היסטוריית מלאי" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "הסטוריית מלאים" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "בניית קו" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "בניית קווים" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "בניית פריט" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "בניית פריטים" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "חברה" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "חברות" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "חברות" msgid "Project Code" msgstr "קוד פרוייקט" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "קוד פרויקט" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "קוד פרויקט" msgid "Purchase Order" msgstr "הזמנות רכש" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "הזמנת רכש" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "שורת הזמנת רכש" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "שורות הזמנת רכש" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "שורות הזמנת רכש" msgid "Sales Order" msgstr "הזמנת מכירה" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "הזמנות מכירה" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "משלוח הזמנת מכירות" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "משלוחי הזמנת מכירות" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "החזרת הזמנה" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "החזרת הזמנות" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "שורת החזרת פריטי הזמנה" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "שורת החזרת פריט הזמנה" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "כתובת" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "כתובות" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "איש קשר" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "אנשי קשר" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "בעלים" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "בעלים" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "בעלים" msgid "User" msgstr "משתמש" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "משתמשים" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "קבוצה" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "קבוצות" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "ייבוא הפעלה" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "ייבוא הפעלות" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "ייבוא הפעלה" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "ייבוא הפעלות" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "תבנית תווית" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "תבניות תוויות" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "תבנית דוח" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "תבניות דווח" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "תצורת פלאגין" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "סוג תוכן" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "סוגי תוכן" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "סוג תוכן" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "סוגי תוכן" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "משלוח" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "לא פעיל" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "אין מלאי" @@ -2536,10 +2575,10 @@ msgstr "מספר סידורי" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "מספר סידורי" msgid "Quantity" msgstr "כמות" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "אתר אינטרנט" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "לא ניתן לערוך את כתב החומרים, מכיוון שהפ #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "ניתן למעקב" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/hi/messages.po b/src/frontend/src/locales/hi/messages.po index 81fe8fdbb2..c35afe983e 100644 --- a/src/frontend/src/locales/hi/messages.po +++ b/src/frontend/src/locales/hi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "लॉगिन सफल" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "लॉगिन असफल" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "लॉगिन असफल" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "उपयोगकर्ता नाम" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "पासवर्ड" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "आपका पासवर्ड" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "पासवर्ड" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "पासवर्ड रीसेट करें" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "आपका पासवर्ड" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "पासवर्ड रीसेट करें" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "ई-मेल" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "इनपुट त्रुटि" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/hu/messages.po b/src/frontend/src/locales/hu/messages.po index da447192b7..e7dad35e6e 100644 --- a/src/frontend/src/locales/hu/messages.po +++ b/src/frontend/src/locales/hu/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hu\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Kódolvasás leállítása" msgid "Start scanning" msgstr "Kódolvasás indítása" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Vonalkód" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Szkennelés" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "Vonalkód adat" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Vonalkód beolvasás" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Vonalkód leválasztása" @@ -244,13 +246,13 @@ msgstr "Jelentések nyomtatása" msgid "Remove this row" msgstr "Sor eltávolítása" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Alacsony készlet" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Tételhez rendelt kép eltávolítása?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Eltávolítás" @@ -574,6 +576,7 @@ msgstr "Eltávolítás" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Törlés" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Küldés" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Egy vagy több mező hibát jelez" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Frissítés" @@ -880,7 +884,7 @@ msgstr "Frissítés" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Törlés" @@ -898,154 +902,158 @@ msgstr "Törlés" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Sikeres bejelentkezés" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Sikeres bejelentkezés" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Belépés sikertelen" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Ellenőrizd amit beírtál és próbáld újra." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Belépés sikertelen" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Ellenőrizd amit beírtál és próbáld újra." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Levél kézbesítése sikeres" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "A bejelentkezési linket keresd a bejövő email fiókodban. Ellenőrizd a spameket is." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Sikertelen a levél kézbesítése" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Vagy próbáljon más módszert" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Felhasználónév" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Felhasználónév" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Jelszó" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Jelszó" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Jelszó" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Jelszó visszaállítása" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Jelszó" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Jelszó visszaállítása" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Küldünk bejelentkezési linket - ha regisztrálva vagy" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Email küldés" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Felhasználónév és jelszó megadása" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Bejelentkezés" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Email küldés" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Regisztráció sikeres" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Kérjük erősítse meg az email címét a regisztráció befejezéséhez" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Beviteli hiba" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Megerősítéshez szükséges" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Jelszó ismét" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Jelszó megismétlése" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Regisztráció" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Vagy használj SSO-t" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Nincsen felhasználóneve?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Vissza a bejelentkezéshez" @@ -1058,7 +1066,7 @@ msgstr "Kiszolgáló" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Kategorizálatlan" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Keresés..." @@ -1197,13 +1205,13 @@ msgstr "{0} db" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Keresés" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Betöltés" @@ -1215,11 +1223,11 @@ msgstr "Nincs találat" msgid "modelRenderer entry required for tables" msgstr "Táblákhoz modelRenderer példány szükséges" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Nincs elérhető bejegyzés" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Adatok feldolgozása" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Hiba történt" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Vonalkód műveletek" @@ -1418,10 +1427,6 @@ msgstr "Vonalkód műveletek" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Vonalkód megtekintése" @@ -1745,8 +1750,8 @@ msgstr "Fiókbeállítások" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Rendszerbeállítások" @@ -1791,7 +1796,7 @@ msgstr "Kijelentkezés" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Alkatrészek" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Készlet" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Beszerzés" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Eladás" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigáció" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "Nincs olvasatlan értesítésed." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "eredmények" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Írd be a keresett szöveget" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Keresési opciók" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Beszállítók" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex keresés" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Gyártók" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Teljes szó keresés" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Vevők" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Írd be a keresett szöveget" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Keresési opciók" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex keresés" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Teljes szó keresés" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Hiba történt a keresés közben" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Nincs találat" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Nincs találat a keresésre" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Dátum" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Dátum" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Telepítési útvonal" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Beépített" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Plugin beállítások" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "Ismeretlen model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Alkatrész paraméter sablon" msgid "Part Parameter Templates" msgstr "Alkatrész paraméter sablonok" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "Beszállítói alkatrész" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Beszállítói alkatrészek" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Gyártói alkatrész" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Gyártói alkatrészek" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Alkatrész kategória" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Készlet tétel" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Készlet tétel" msgid "Stock Items" msgstr "Készlet tételek" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Készlet hely" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Készlethelyek" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Készlettörténet" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Készlettörténet" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Gyártás" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Gyártások" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Cég" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Cégek" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Cégek" msgid "Project Code" msgstr "Projektszám" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Projektszámok" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Projektszámok" msgid "Purchase Order" msgstr "Beszerzési rendelés" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Beszerzési rendelések" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Beszerzési rendelés tétel" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Beszerzési rendelés tételei" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Beszerzési rendelés tételei" msgid "Sales Order" msgstr "Vevői rendelés" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Vevői rendelések" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Vevői rendelés szállítmány" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Vevői rendelés szállítmányok" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Visszavétel" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Visszavételek" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Cím" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Címek" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kapcsolat" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kapcsolatok" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Tulajdonos" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Tulajdonosok" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Tulajdonosok" msgid "User" msgstr "Felhasználó" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Felhasználók" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Csoport" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Csoportok" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Szállítmány" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inaktív" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Nincs készlet" @@ -2536,10 +2575,10 @@ msgstr "Sorozatszám" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Sorozatszám" msgid "Quantity" msgstr "Mennyiség" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Köteg" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "Gyártás kimenet" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Köteg" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Köteg" msgid "Status" msgstr "Állapot" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "A készlet hozzárendelés forrás készlethelyének kiválasztása" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "A készlet hozzárendelés forrás készlethelyének kiválasztása" msgid "Allocate Stock" msgstr "Készlet foglalása" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Készlet lefoglalva" @@ -3623,7 +3671,7 @@ msgstr "Készlet lefoglalva" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Felsőbb szintű alkatrész kategória" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Hely" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Alapértelmezett helyre tárolás" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Alapértelmezett helyre tárolás" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Tárolás a tétel sor célhelyén" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Tárolás a már megérkezett készlettel" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Tárolás a már megérkezett készlettel" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Sorozatszámok" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "Fogadott" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Add meg az új készlet tételhez tartozó sorozatszámokat (vagy hagyd msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Új készlet tétel" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Mozgatás az alapértelmezett helyre" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Áthelyezés" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Áthelyezés" msgid "In Stock" msgstr "Készleten" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Hozzáadás" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Mennyiség" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Készlethez ad" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Készlet csökkentése" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Készlet áthelyezése" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Leltározás" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Készlet állapot módosítása" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Készlet összevonása" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Készlet tétel törlése" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Szülő készlet hely" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Érték" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Kijelentkezve" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Sikeresen kijelentkeztél" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Sikeresen kijelentkeztél" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Kijelentkezve" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Sikeresen kijelentkeztél" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Nézd meg a beérkező levelek mappájában a visszaállítási linket. Ez csak akkor működik, ha van fiókod. Ellenőrizd a spameket is." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Visszaállítás sikertelen" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Bejelentkezve" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Sikeres bejelentkezés" @@ -4166,40 +4224,52 @@ msgstr "Biztosan törli ezt az elemet?" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "A jelszó beállítása sikeresen megtörtént. Most már bejelentkezhetsz az új jelszavaddal" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Ellenőrzöm hogy be vagy-e már jelentkezve" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nincs kijelölés" @@ -4219,8 +4289,8 @@ msgstr "Nincs kijelölés" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Bejelentkezés" @@ -4228,20 +4298,59 @@ msgstr "Bejelentkezés" msgid "Logging out" msgstr "Kijelentkezés" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Érvénytelen token" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Új jelszó beállításához meg kell adnod egy érvényes tokent. Nézd meg a beérkező levelek mappájában a visszaállítási linket." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Jelszó beállítva" @@ -4249,6 +4358,14 @@ msgstr "Jelszó beállítva" msgid "Set new password" msgstr "Új jelszó beállítása" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Új jelszó beállítása" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Hiba: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Központi beléptetési fiókok" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Nem engedélyezett" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Sso nincs engedélyezve ezen a szerveren" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Többfaktoros" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Többfaktoros autentikáció nincs beállítva a fiókodhoz" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "A következő email címek vannak hozzárendelve a felhasználódhoz:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Elsődleges" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Ellenőrizve" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Nem ellenőrzött" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Email cím hozzáadása" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail cím" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Email cím" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Legyen elsődleges" @@ -4731,46 +4880,143 @@ msgstr "Legyen elsődleges" msgid "Re-send Verification" msgstr "Megerősítés újraküldése" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Email cím hozzáadása" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail cím" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Email cím" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Email hozzáadása" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "A kiszolgáló nincs konfigurálva" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Nincs beállítva" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Jelenleg nincs ehhez a fiókhoz kapcsolódó közösségi fiókod." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Fiókodba a következő harmadik fél fiókjainak bármelyikével bejelentkezhetsz" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Szegély sugár" msgid "Loader" msgstr "Betöltő" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Vonalkódok" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Árazás" @@ -5128,19 +5382,19 @@ msgstr "Árazás" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Címkék" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Riportolás" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Gyártási utasítások" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Gyártás részletei" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Sortételek" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Befejezetlen kimenetek" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "Teszt eredmények" msgid "Edit Build Order" msgstr "Gyártási utasítás szerkesztése" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Gyártási utasítás létrehozása" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Gyártáshoz foglalások" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Weboldal" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "Beszállító" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Gyártó" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Gyártó" msgid "Customer" msgstr "Vevő" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Szállított alkatrészek" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Gyártott alkatrészek" @@ -5591,24 +5850,20 @@ msgstr "Gyártott alkatrészek" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Szállított alkatrészek" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Hozzárendelt készlet" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Cég szerkesztése" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Cég műveletek" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "Paraméterek" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Beszállítók" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Beérkezett készlet" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "Gyártásban" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Alapértelmezett beszállító" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Ártartomány" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Alkatrész szerkesztése" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Alkatrész hozzáadása" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Készlet rendelés" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Alkatrész műveletek" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Nincs árazási információ ehhez az alkatrészhez." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Árazás áttekintés" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Beszerzési előzmények" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Belső árazás" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Alkatrészjegyzék árazás" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Alkatrészváltozat árazás" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Eladási ár" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Eladási előzmények" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maximum" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Gyártók" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Teljes ár" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Összetevő" @@ -6277,13 +6520,13 @@ msgstr "Összetevő" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimum ár" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maximum ár" @@ -6344,65 +6587,65 @@ msgstr "Árlépcső" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Árkategória" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Alkatrész árazás felülbírálása" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Általános árazás" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Beszerzési ár" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Legutóbb frissítve" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Beszállítói ár" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Alkatrészváltozat" @@ -6449,13 +6692,13 @@ msgstr "Alkatrészváltozat" msgid "Edit Purchase Order" msgstr "Beszerzési rendelés szerkesztése" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Beszerzés hozzáadása" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Beszállítói azonosító" @@ -6465,24 +6708,24 @@ msgstr "Beszállítói azonosító" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Kész sortételek" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Cél" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Teljes költség" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Rendelés részletei" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Rendelés műveletek" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Vevők" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Kész szállítmányok" @@ -6596,46 +6835,46 @@ msgstr "Kész szállítmányok" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Szűrő" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Adatok frissítése" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Gyártásban" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Gyártmány" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Követésre kötelezett" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "Opcionális sorok mutatása" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Alkategóriákkal együtt" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Van mértékegysége" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Minimális készlet" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Szűrés aktív státusz szerint" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Szűrés szerelési tulajdonság szerint" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Alkategóriákkal együtt" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Szűrés összetevő tulajdonság szerint" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Szűrés követésre kötelezettség szerint" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Szűrés meglévő mértékegység szerint" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Van IPN-je" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Szűrés meglévő IPN szerint" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Van készlet" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Szűrés meglévő készlet szerint" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Szűrés alacsony készlet szerint" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Beszerezhető" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Szűrés beszerezhetőség szerint" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Értékesíthető" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Szűrés értékesíthetőség szerint" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuális" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Szűrés virtuális alkatrészek szerint" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Nem virtuális" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Kiválaszt" @@ -8708,19 +8947,19 @@ msgstr "Leírás nem elérhető" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Plugin telepítésének megerősítése" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Plugin kikapcsolásának megerősítése" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Kikapcsolás" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Bekapcsolás" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Eltávolítás" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Plugin aktiválása" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Plugin telepítése" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Telepítés" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "A bővítmény sikeresen telepítve" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Bővítmény eltávolítása" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Bővítmény eltávolítás megerősítése" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "A kiválasztott bővítmény el lesz távolítva." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "A bővítmény sikeresen eltávolítva" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "A bővítmény sikeresen eltávolítva" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Plugin törlése" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "A bővítmény konfiguráció törlése eltávolít minden beállítást és adatot. Biztos benne, hogy törölni akarja ezt a bővítményt?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Bővítmények újratöltve" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Bővítmények újratöltése sikeres" @@ -8830,7 +9069,7 @@ msgstr "Bővítmények újratöltése sikeres" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Bővítmények újratöltése" @@ -8842,11 +9081,11 @@ msgstr "Bővítmények újratöltése" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Bővítmény telepítése" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Bővítmény részletek" @@ -8866,11 +9105,11 @@ msgstr "Bővítmény részletek" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Minta" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Telepítve" diff --git a/src/frontend/src/locales/id/messages.po b/src/frontend/src/locales/id/messages.po index 386da9313b..3d1d8459fb 100644 --- a/src/frontend/src/locales/id/messages.po +++ b/src/frontend/src/locales/id/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "Berhenti Memindai" msgid "Start scanning" msgstr "Mulai Memindai" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Pindai" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "Cetak Laporan" msgid "Remove this row" msgstr "Hapus Baris ini" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Hapus" @@ -574,6 +576,7 @@ msgstr "Hapus" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Pembaruan" @@ -880,7 +884,7 @@ msgstr "Pembaruan" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Hapus" @@ -898,154 +902,158 @@ msgstr "Hapus" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Berhasil Login" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Gagal Login" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Gagal Login" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nama Pengguna" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Nama Anda" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Kata Sandi" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Kata Sandi Anda" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Kata Sandi" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Reset Kata Sandi" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Kata Sandi Anda" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Reset Kata Sandi" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Surel" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Kirimkan pada saya sebuah surel" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Gunakan Nama Pengguna dan Kata Sandi" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Kirim Surel" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Ulangi kata sandi" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Tidak terkategori" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Cari..." @@ -1197,13 +1205,13 @@ msgstr "{0} icon" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Cari" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Memuat" @@ -1215,11 +1223,11 @@ msgstr "Tidak ada hasil yang ditemukan" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Pilihan" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Pengaturan Sistem" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Persediaan" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Penjualan" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Lihat semua notifikasi" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Pelanggan" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Tidak ada hasil" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "Model Tidak diketahui: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Perusahaan" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Perusahaan" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Perusahaan" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Alamat" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontak" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontak" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Pemilik" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Pemilik" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Pemilik" msgid "User" msgstr "Pengguna" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Pengguna" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Tidak Aktif" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Tidak ada persediaan" @@ -2536,10 +2575,10 @@ msgstr "Nomor Seri" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Nomor Seri" msgid "Quantity" msgstr "Jumlah" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Atur Lokasi" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Tambah Catatan" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Lokasi" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Nomor Seri" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Catatan" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "Telah diterima" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Memuat..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Tambah" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Tidak ada pilihan" @@ -4219,8 +4289,8 @@ msgstr "Tidak ada pilihan" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Terverifikasi" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Tidak Terverifikasi" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Tambah Alamat Surel" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "Surel" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Alamat Surel" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Tambah Alamat Surel" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "Surel" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Alamat Surel" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Tambah Surel" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Laman" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Nomor Telepon" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Alamat Surel" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Mata Uang Utama" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Mata Uang Utama" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Total Harga" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "Harga" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Ubah Harga" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Harga tidak diatur" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Muat Ulang" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Pelanggan" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/it/messages.po b/src/frontend/src/locales/it/messages.po index da773d6d43..4bcd8825cb 100644 --- a/src/frontend/src/locales/it/messages.po +++ b/src/frontend/src/locales/it/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: it\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Italian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Interrompi la scansione" msgid "Start scanning" msgstr "Avvia scansione" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Codice a barre" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Scansione" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Scansiona codice a barre" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Questo rimuoverà il collegamento al codice a barre associato" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Scollega Codice a Barre" @@ -244,13 +246,13 @@ msgstr "Stampa report" msgid "Remove this row" msgstr "Rimuovi questa riga" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "Mostra il numero di categorie di articoli a cui sei sottoscritto" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Disponibilità scarsa" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Rimuovi l'immagine associata all'articolo?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Rimuovi" @@ -574,6 +576,7 @@ msgstr "Rimuovi" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Elimina" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Invia" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Esistono errori per uno o più campi del modulo" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Aggiorna" @@ -880,7 +884,7 @@ msgstr "Aggiorna" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Elimina" @@ -898,154 +902,158 @@ msgstr "Elimina" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Accesso riuscito" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Accesso effettuato con successo" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Accesso non riuscito" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Controllare i dati inseriti e riprovare." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Accesso non riuscito" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Controllare i dati inseriti e riprovare." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Spedizione email riuscita" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Controlla la tua casella di posta per il link di accesso. Se hai un account, riceverai un link di accesso. Controlla anche lo spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Invio della posta non riuscito" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Oppure proseguire con altri metodi" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nome utente" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Il tuo nome utente" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Password" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "La tua password" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Password" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Reimposta password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "La tua password" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Reimposta password" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Ti invieremo un link per accedere - se sei registrato" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Inviami una email" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Usa nome utente e password" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Accedi" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Invia email" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registrazione completata con successo" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Per favore conferma il tuo indirizzo email per completare la registrazione" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Errore d'inserimento dati" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Questo verrà utilizzato per una conferma" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Ripeti password" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Ripeti password" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registrati" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Oppure usa SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Non hai un account?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Torna alla pagina di accesso" @@ -1058,7 +1066,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Non categorizzato" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Ricerca..." @@ -1197,13 +1205,13 @@ msgstr "{0} icone" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Ricerca" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Caricamento" @@ -1215,11 +1223,11 @@ msgstr "Nessun risultato trovato" msgid "modelRenderer entry required for tables" msgstr "Voce ModelRenderer necessaria per le tabelle" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Nessuna voce disponibile" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Elaborazione dati" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Si è verificato un errore" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opzioni" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Azioni Codice A Barre" @@ -1418,10 +1427,6 @@ msgstr "Azioni Codice A Barre" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Impostazioni di sistema" @@ -1791,7 +1796,7 @@ msgstr "Disconnettiti" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Articoli" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Stock" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Fabbricazione" @@ -1824,24 +1829,24 @@ msgstr "Fabbricazione" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Vendite" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigazione" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Visualizza tutte le notifiche" msgid "You have no unread notifications." msgstr "Non hai notifiche non lette." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "risultati" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Inserisci il testo della ricerca" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Aggiorna Risultati di Ricerca" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opzioni di Ricerca" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Ricerca con regex" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Ricerca parole intere" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Inserisci il testo della ricerca" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Aggiorna Risultati di Ricerca" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opzioni di Ricerca" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Ricerca con regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Ricerca parole intere" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Si è verificato un errore durante la ricerca" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Nessun risultato disponibile per la ricerca" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Informazioni Plugin" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configurazione Plugin" @@ -2116,22 +2154,22 @@ msgstr "Modello sconosciuto: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Modello parametro articolo" msgid "Part Parameter Templates" msgstr "Modelli parametro articolo" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Modello Test Articolo" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Modelli Test Articolo" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Modelli Test Articolo" msgid "Supplier Part" msgstr "Articolo Fornitore" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Articoli fornitore" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Articolo Produttore" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Articoli Produttore" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Categoria Articolo" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Categorie Articolo" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Articolo in magazzino" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Articolo in magazzino" msgid "Stock Items" msgstr "Articoli in magazzino" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Ubicazione articolo" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Ubicazioni articolo" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Tipo ubicazione articolo" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Tipi ubicazione articolo" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Cronologia Magazzino" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Cronologie Magazzino" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Produzione" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Produzione" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Linea di produzione" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Linee di produzione" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Costruisci articolo" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Costruisci articoli" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Azienda" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Aziende" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Aziende" msgid "Project Code" msgstr "Codice del progetto" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Codici del progetto" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Codici del progetto" msgid "Purchase Order" msgstr "Ordine d'acquisto" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Ordini d'acquisto" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Riga ordine di acquisto" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Righe ordine di acquisto" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Righe ordine di acquisto" msgid "Sales Order" msgstr "Ordine di Vendita" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Ordini di Vendita" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Spedizione dell'ordine di vendita" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Spedizioni dell'ordine di vendita" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Ordine di reso" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Ordini di reso" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Articolo Linea Ordine Reso" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Articoli Linea Ordine Reso" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Indirizzo" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Indirizzi" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contatto" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contatti" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Proprietario" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Proprietari" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Proprietari" msgid "User" msgstr "Utente" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Utenti" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Gruppo" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Gruppi" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importa Sessione" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importa Sessioni" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importa Sessione" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importa Sessioni" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Modello Etichetta" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Modelli Etichetta" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Modello Report" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Modelli Report" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configurazioni Plugin" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Tipo Contenuto" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Tipi Contenuti" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Tipo Contenuto" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Tipi Contenuti" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Spedizione" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inattivo" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Nessuno stock" @@ -2536,10 +2575,10 @@ msgstr "Numero Seriale" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Numero Seriale" msgid "Quantity" msgstr "Quantità" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "A proposito del progetto InvenTree" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "A proposito del progetto InvenTree" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Stato" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Completa gli output di produzione" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Gli ordini di produzione sono stati completati" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Rimuovi gli output di produzione" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Gli output di produzione sono stati rimossi" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancella gli output di produzione" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Gli output di produzione sono stati cancellati" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancella gli output di produzione" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Gli output di produzione sono stati cancellati" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Selezionare la posizione di origine per l'assegnazione dello stock" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Selezionare la posizione di origine per l'assegnazione dello stock" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Articoli di stock assegnati" @@ -3623,7 +3671,7 @@ msgstr "Articoli di stock assegnati" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Categoria articolo principale" msgid "Subscribe to notifications for this category" msgstr "Sottoscrivi notifiche per questa categoria" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Assegna codice lotto e numeri di serie" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Assegna Codice Lotto" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Scegliere la posizione" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destinazione oggetto selezionata" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Posizione predefinita della categoria parte selezionata" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Posizione stock ricevuto selezionata" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Posizione predefinita selezionata" @@ -3688,60 +3736,60 @@ msgstr "Posizione predefinita selezionata" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Imposta Posizione" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Regola Imballaggio" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Modifica Stato" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Aggiungi Nota" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Posizione" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Memorizza nella posizione predefinita" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Memorizza nella posizione predefinita" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Memorizza con stock già ricevuto" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Memorizza con stock già ricevuto" msgid "Batch Code" msgstr "Codice Lotto" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Inserisci il codice lotto per gli articoli ricevuti" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Numeri di serie" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Inserisci i numeri di serie per gli elementi ricevuti" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Imballaggio" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Nota" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Ricevuto" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Ricevi Elementi Riga" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Ricevi elementi" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Oggetto ricevuto in magazzino" @@ -3854,40 +3906,40 @@ msgstr "Inserire i numeri di serie per la nuova giacenza (o lasciare vuoto)" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Aggiungi Elemento Magazzino" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Selezionare l'articolo da installare" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Caricamento..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Sposta nella posizione predefinita" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Sposta" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Sposta" msgid "In Stock" msgstr "In giacenza" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Aggiungi" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Conta" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Aggiungi Giacenza" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Rimuovi giacenza" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Trasferisci giacenza" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Conteggio Giacenze" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Modifica stato giacenze" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Unisci giacenze" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Cancella Elemento di Magazzino" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Posizione giacenza principale" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Disconnesso" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Disconnesso con Successo" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Disconnesso con Successo" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Disconnesso" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Disconnesso con Successo" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Controlla la tua casella di posta per un link di reset. Funziona solo se hai un account. Controlla anche lo spam." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Ripristino fallito" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Accesso effettuato" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Accesso effettuato con successo" @@ -4166,40 +4224,52 @@ msgstr "Sei sicuro di voler eliminare questo articolo?" msgid "Latest serial number" msgstr "Ultimo Numero Di Serie" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "La password è stata impostata con successo. Ora puoi accedere con la tua nuova password" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Verifica se si è già connessi" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nessuna selezione" @@ -4219,8 +4289,8 @@ msgstr "Nessuna selezione" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "Disconessione" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token non valido" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Devi fornire un token valido per impostare una nuova password. Controlla la tua casella di posta per il link di reset." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Password impostata" @@ -4249,6 +4358,14 @@ msgstr "Password impostata" msgid "Set new password" msgstr "Imposta una nuova password" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Imposta una nuova password" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Errore: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Accesso Al Personale" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Tutte le unità" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Sito Web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Dettagli azienda" @@ -5583,7 +5838,11 @@ msgstr "Dettagli azienda" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "Programmato" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Nuovo Report Inventario" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Aggiornamento dati sui prezzi" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Dati sui prezzi aggiornati" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Impossibile aggiornare i dati dei prezzi" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Modifica Prezzo" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Prezzo Non Impostato" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "I dati sui prezzi non sono stati calcolati per questo articolo" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Azioni del Prezzo" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Aggiorna" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Aggiorna dati sui prezzi" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Modifica i dati dei prezzi" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Data di emissione" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Data di emissione" msgid "Completion Date" msgstr "Data di completamento" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "Questa azione non può essere annullata" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "I filtri tabella personalizzati sono attivi" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "Sei iscritto alle notifiche per questa categoria" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "Vedi Ordine di Vendita" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuale" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Attiva plugin selezionato" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Aggiorna il plugin selezionato" @@ -8753,76 +8992,76 @@ msgstr "Aggiorna il plugin selezionato" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Disinstallare il plugin selezionato" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Elimina la configurazione del plugin selezionata" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/ja/messages.po b/src/frontend/src/locales/ja/messages.po index b143800bce..6f3a8cf7c5 100644 --- a/src/frontend/src/locales/ja/messages.po +++ b/src/frontend/src/locales/ja/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ja\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "スキャン停止" msgid "Start scanning" msgstr "スキャン開始" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "バーコード" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "スキャン" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "カメラ入力" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "スキャナー入力" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "バーコード情報" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "バーコードデータなし" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "バーコードデータをスキャンまたは入力" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "バーコードデータの入力" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "バーコードをスキャン" @@ -163,7 +165,7 @@ msgstr "バーコードのリンクに失敗" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "これにより、関連するバーコードへのリンクが削除さ #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "リンク解除バーコード" @@ -244,13 +246,13 @@ msgstr "印刷レポート" msgid "Remove this row" msgstr "この行を削除" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "プロバイダーにリダイレクトされます。" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "このプロバイダーはフルセットアップされていません。" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "登録済み部品カテゴリー数を表示" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "在庫少" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "このアイテムから関連画像を削除しますか?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "削除" @@ -574,6 +576,7 @@ msgstr "削除" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "クリア" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "送信" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "1つ以上のフォームフィールドにエラーがあります" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "更新" @@ -880,7 +884,7 @@ msgstr "更新" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "削除" @@ -898,154 +902,158 @@ msgstr "削除" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "ログインが成功しました" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "ログイン成功" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "ログインに失敗しました" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "入力内容を確認し、もう一度やり直してください。" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "ログインに失敗しました" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "入力内容を確認し、もう一度やり直してください。" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "メール送信成功" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "ログイン用リンクを受信箱でご確認ください。アカウントをお持ちの場合は、ログイン用リンクが届きます。迷惑メールボックスもチェックしてください。" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "メール送信失敗" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "あるいは他の方法で続けますか" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "ユーザー名" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "ユーザー名" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "パスワード" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "パスワード" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "パスワード" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "パスワードを再設定" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "パスワード" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "パスワードを再設定" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "メールアドレス" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "登録されている方には、ログイン用のリンクをお送りします" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "メールを送る" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "ユーザー名とパスワードを使用" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "ログイン" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Eメールを送信" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "登録が完了しました" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "ご登録のメールアドレスをご確認ください" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "入力エラー" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "これは確認に使用されます" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "パスワードを再入力" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "パスワードを再入力" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "登録" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "またはSSOを使用します。" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "アカウントをお持ちですか?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "ログインに戻る" @@ -1058,7 +1066,7 @@ msgstr "ホスト" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "未分類" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "検索…" @@ -1197,13 +1205,13 @@ msgstr "{0} アイコン" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "検索" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "読み込み中" @@ -1215,11 +1223,11 @@ msgstr "一致するものが見つかりませんでした" msgid "modelRenderer entry required for tables" msgstr "テーブルに必要な modelRenderer エントリ" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "選択した機能に使用できるエントリはありません" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "新しい行を追加" @@ -1293,6 +1301,7 @@ msgstr "加工データ" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "エラーが発生しました" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "オプション" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "バーコードアクション" @@ -1418,10 +1427,6 @@ msgstr "バーコードアクション" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "バーコードを表示" @@ -1745,8 +1750,8 @@ msgstr "アカウント設定" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "システム設定" @@ -1791,7 +1796,7 @@ msgstr "ログアウト" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "パーツ" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "在庫" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "製造" @@ -1824,24 +1829,24 @@ msgstr "製造" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "購買" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "販売" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "ナビゲーション" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "すべての通知を表示" msgid "You have no unread notifications." msgstr "未読の通知はありません。" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "結果" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "検索文字列の入力" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "検索結果の更新" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "仕入先" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "検索設定" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "メーカー" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "正規表現検索" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "全単語検索" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "顧客" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "検索文字列の入力" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "検索結果の更新" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "検索設定" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "正規表現検索" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "全単語検索" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "検索中にエラーが発生しました" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "該当なし" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "検索結果がありません" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "プラグイン情報" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "日付" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "日付" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "設置経路" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "組み込み" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "プラグイン設定" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "プラグインの設定" @@ -2116,22 +2154,22 @@ msgstr "不明なモデル{model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "部品パラメータテンプレート" msgid "Part Parameter Templates" msgstr "部品パラメータテンプレート" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "部品試験テンプレート" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "部品試験テンプレート" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "部品試験テンプレート" msgid "Supplier Part" msgstr "サプライヤー" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "サプライヤー・パーツ" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "メーカー・パーツ" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "メーカー・パーツ" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "パーツカテゴリ" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "パーツカテゴリ" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "在庫商品" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "在庫商品" msgid "Stock Items" msgstr "在庫商品" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "在庫場所" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "在庫場所" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "在庫場所 タイプ" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "ストックロケーションの種類" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "株式履歴" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "株式履歴" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "組立" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "ビルド" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "組立ライン" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "ビルドライン" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "ビルドアイテム" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "ビルドアイテム" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "会社名" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "会社" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "会社" msgid "Project Code" msgstr "プロジェクトコード" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "プロジェクトコード" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "プロジェクトコード" msgid "Purchase Order" msgstr "注文" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "購入注文" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "発注ライン" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "発注ライン" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "発注ライン" msgid "Sales Order" msgstr "セールスオーダー" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "セールスオーダー" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "販売注文の出荷" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "販売注文の出荷" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "リターンオーダー" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "返品注文" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "返品注文項目" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "返品注文項目" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "住所" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "マイアカウント" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "お問い合わせ" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "連絡先" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "所有者" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "所有者" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "所有者" msgid "User" msgstr "ユーザー" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "ユーザー" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "グループ" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "グループ" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "インポートセッション" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "インポートセッション" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "インポートセッション" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "インポートセッション" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "ラベルテンプレート" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "ラベルテンプレート" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "レポートテンプレート" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "レポートテンプレート" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "プラグインの設定" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "コンテンツタイプ" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "コンテンツタイプ" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "コンテンツタイプ" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "コンテンツタイプ" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "セレクションリスト" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "セレクション・リスト" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "発送" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "非アクティブ" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "在庫なし" @@ -2536,10 +2575,10 @@ msgstr "シリアル番号" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "シリアル番号" msgid "Quantity" msgstr "数量" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "スクール機能" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "選択した部品の誤りを訂正してください。" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "パーツの注文" @@ -3509,7 +3564,7 @@ msgstr "InvenTreeプロジェクトについて" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "InvenTreeプロジェクトについて" msgid "Build Output" msgstr "ビルド出力" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "スクール機能" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "スクール機能" msgid "Status" msgstr "ステータス" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "完全なビルド出力" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "ビルドアウトプット完了" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "スクラップビルドの出力" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "ビルド出力は廃止" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "ビルド出力のキャンセル" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "ビルドアウトプットはキャンセルされました" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "ビルド出力のキャンセル" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "ビルドアウトプットはキャンセルされました" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "割り当てられた" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "ソース・ロケーション" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "在庫配分のソースの場所を選択します。" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "在庫配分のソースの場所を選択します。" msgid "Allocate Stock" msgstr "株式の割当" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "割り当てられた在庫品目" @@ -3623,7 +3671,7 @@ msgstr "割り当てられた在庫品目" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "登録済み" @@ -3651,31 +3699,31 @@ msgstr "親部品カテゴリー" msgid "Subscribe to notifications for this category" msgstr "このカテゴリの通知を受け取る" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "バッチコードとシリアル番号の割り当て" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "バッチコードの割り当て" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "地域を選択" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "選択された項目" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "選択されたパートカテゴリーのデフォルトの場所" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "選択された受入在庫場所" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "デフォルトの場所を選択" @@ -3688,60 +3736,60 @@ msgstr "デフォルトの場所を選択" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "セット場所" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "パッケージの調整" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "ステータスを変更" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "コメントを挿入" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "場所" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "デフォルトの場所に保存" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "デフォルトの場所に保存" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "行先での保存" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "入荷済みの在庫がある店舗" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "入荷済みの在庫がある店舗" msgid "Batch Code" msgstr "バッチコード" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "受領品のバッチコードを入力" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "シリアル番号" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "受け取った商品のシリアル番号を入力" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "有効期限" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "パッケージング" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "備考" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "受信" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "ラインアイテムの受信" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "商品を受け取る" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "入荷した商品" @@ -3854,40 +3906,40 @@ msgstr "新しい在庫のシリアル番号を入力(または空白のまま msgid "Stock Status" msgstr "在庫状況" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "在庫商品の追加" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "取り付ける部品の選択" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "株式譲渡の確認" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "読み込み中…" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "デフォルトの場所に移動" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "移動" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "移動" msgid "In Stock" msgstr "在庫あり" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "追加" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "カウント" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "在庫追加" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "在庫追加" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "在庫の削除" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "在庫一掃" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "株式譲渡" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "株式譲渡" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "株式譲渡" msgid "Count Stock" msgstr "在庫数" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "在庫数" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "在庫状況の変更" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "在庫状況の変更" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "株式の併合" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "株式併合" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "顧客への在庫割り当て" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "顧客に割り当てられた在庫" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "在庫アイテムの削除" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "ストック削除" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "親株式所在地" @@ -3998,7 +4050,7 @@ msgstr "エントリー" msgid "List of entries to choose from" msgstr "エントリーリスト" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "エントリーリスト" msgid "Value" msgstr "値" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "ラベル" @@ -4061,17 +4113,15 @@ msgstr "内部サーバーエラー" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "ログアウト" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "ログアウトに成功しました" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "ログアウトに成功しました" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "ログアウト" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "ログアウトに成功しました" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "リセットのリンクを受信トレイでご確認ください。これはアカウントを持っている場合にのみ機能します。迷惑メールもチェックしてください。" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "リセット失敗" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "ログイン中" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "ログインに成功しました" @@ -4166,40 +4224,52 @@ msgstr "このアイテムを削除してもよろしいですか?" msgid "Latest serial number" msgstr "最新のシリアル番号" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "パスワードを変更できませんでした" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "パスワードが変更されました" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "パスワードは正常に設定されました。新しいパスワードでログインできます。" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "パスワードをリセットする" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "新しいパスワード" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "新しいパスワードを入力してください" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "確認のため新しいパスワードを再入力してください" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "確認のため新しいパスワードを再入力してください" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "確認" @@ -4207,7 +4277,7 @@ msgstr "確認" msgid "Checking if you are already logged in" msgstr "ログイン済みかどうかの確認" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "選択なし" @@ -4219,8 +4289,8 @@ msgstr "選択なし" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "ログイン" @@ -4228,20 +4298,59 @@ msgstr "ログイン" msgid "Logging out" msgstr "ログアウトしています" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "トークンが無効です" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "新しいパスワードを設定するには、有効なトークンが必要です。リセットリンクは受信箱をご確認ください。" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "パスワード設定" @@ -4249,6 +4358,14 @@ msgstr "パスワード設定" msgid "Set new password" msgstr "新しいパスワードを設定" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "新しいパスワードを設定" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "エラー:{0}" @@ -4551,10 +4680,6 @@ msgstr "スキャンされたアイテム" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "スタッフアクセス" msgid "Superuser" msgstr "スーパーユーザー" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "シングルサインオンアカウント" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "有効になっていません" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "このサーバーではシングルサインオンが有効になっていません" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "マルチファクター" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "アカウントに多要素認証が設定されていません。" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "トークン" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "以下のメールアドレスがアカウントに関連付けられています:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "プライマリー" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "承認済み" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "未承認" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "メールアドレスの追加" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "メールアドレス" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "電子メールアドレス" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "メインに指定" @@ -4731,46 +4880,143 @@ msgstr "メインに指定" msgid "Re-send Verification" msgstr "検証の再送信" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "メールアドレスの追加" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "メールアドレス" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "電子メールアドレス" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "メールアドレスを追加" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "プロバイダが設定されていません" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "未設定" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "このアカウントにはソーシャルネットワークのアカウントはありません。" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "以下のサードパーティアカウントのいずれかを使用してアカウントにサインインできます。" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "トークンが使用されています。" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "取消し" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "トークンの設定なし" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "有効 期限" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "最終表示" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "トークン" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "枠線の丸み" msgid "Loader" msgstr "ローダー" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "全てのユニット" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "バーコード" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "価格" @@ -5128,19 +5382,19 @@ msgstr "価格" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "ラベル" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "レポート" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "組立注文" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "即時支払通知" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "カスタムステータス" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "発行者" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "作成日" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "詳細" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "ラインアイテム" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "不完全なアウトプット" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "割当株式" @@ -5383,131 +5637,131 @@ msgstr "テストの結果" msgid "Edit Build Order" msgstr "ビルド順序の編集" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "ビルドオーダーの追加" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "ビルドオーダーのキャンセル" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "注文のキャンセル" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "この注文をキャンセル" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "ホールドビルドオーダー" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "この注文を保留にします" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "注文の保留" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "ビルドオーダーの発行" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "本命令の発令" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "オーダー発行" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "コンプリート・ビルド・オーダー" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "この注文を完了としてマークしてください。" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "注文完了" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "発行順序" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "完全な注文" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "ビルドオーダーアクション" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "掲載依頼を編集" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "重複した注文" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "ホールドオーダー" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "お見積をキャンセル" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "組立注文" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "ウェブサイト" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "電話番号" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "メールアドレス" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "デフォルトの通貨" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "デフォルトの通貨" msgid "Supplier" msgstr "仕入先" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "製造元" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "製造元" msgid "Customer" msgstr "顧客" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "会社詳細" @@ -5583,7 +5838,11 @@ msgstr "会社詳細" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "供給部品" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "製造部品" @@ -5591,24 +5850,20 @@ msgstr "製造部品" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "供給部品" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "割り当て在庫" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "会社情報を編集" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "削除会社" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "会社の動き" @@ -5647,13 +5902,6 @@ msgstr "メーカーパーツ詳細" msgid "Parameters" msgstr "パラメータ" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "仕入先" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "サプライヤー部品詳細" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "受入在庫" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "サプライヤー価格" @@ -5882,7 +6130,7 @@ msgstr "キーワード" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "在庫状況" @@ -5942,7 +6190,7 @@ msgstr "生産中" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "ロック中" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "バーチャルパート" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "デフォルト・サプライヤー" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "料金帯" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "パーツを編集" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "部品追加" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "注文在庫" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "パートアクション" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "この部品の価格データは見つかりませんでした。" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "価格概要" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "購入履歴" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "内部価格設定" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "BOM価格" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "バリアント価格" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "セール価格" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "販売履歴" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "最大" @@ -6173,7 +6421,7 @@ msgstr "予定済み" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "最小" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "新しいストックテイク・レポート" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "最小値" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "最大値は" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "メーカー" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "合計金額" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "コンポーネント" @@ -6277,13 +6520,13 @@ msgstr "コンポーネント" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "最小価格" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "最大価格" @@ -6344,65 +6587,65 @@ msgstr "価格ブレーク" msgid "Price" msgstr "価格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "価格データの更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "価格データ更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "価格データの更新に失敗しました" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "価格設定を編集" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "価格カテゴリー" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "オーバーライド価格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "全体価格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "購入価格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "最終更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "価格未定" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "この部品の価格データは計算されていません。" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "価格設定" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "価格データの更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "価格データの編集" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "サプライヤー価格" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "バリアントパーツ" @@ -6449,13 +6692,13 @@ msgstr "バリアントパーツ" msgid "Edit Purchase Order" msgstr "発注書の編集" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "発注書の追加" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "サプライヤー・リファレンス" @@ -6465,24 +6708,24 @@ msgstr "サプライヤー・リファレンス" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "完了した項目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "目的地" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "注文通貨" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "合計コスト" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "発行日" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "発行日" msgid "Completion Date" msgstr "完了日" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "ご注文の詳細" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "追加項目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "発注書の発行" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "発注書のキャンセル" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "発注書の保留" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "完全な発注書" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "注文の操作" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "返品注文の編集" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "返品注文の追加" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "返品注文の発行" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "返品注文のキャンセル" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "返品注文の保留" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "リターンオーダー" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "顧客" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "完了した出荷" @@ -6596,46 +6835,46 @@ msgstr "完了した出荷" msgid "Edit Sales Order" msgstr "販売注文の編集" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "販売注文の追加" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "発送" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "販売注文書の発行" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "販売注文のキャンセル" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "販売注文の保留" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "販売注文の発送" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "この注文を発送しますか?" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "発送済み注文" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "完全な販売注文" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "船舶発注" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "フィルタ" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "テーブルフィルター" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "選択したアイテムを削除しますか?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "この操作は元に戻せません。" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "カスタムテーブルフィルターが有効" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "選択したレコードの削除" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "データを更新する" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "建物" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "消耗品の表示" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "価格" @@ -7497,7 +7736,7 @@ msgstr "部品がロックされているため、部品表を編集できませ #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "アセンブリ" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "アクティブなアセンブリの表示" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "追跡可能" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "オプションラインの表示" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "テスト可能" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "このカテゴリの通知を購読しています" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "サブカテゴリを含む" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "選択肢のあるテンプレートを表示" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "ユニット" @@ -8384,141 +8623,141 @@ msgstr "販売オーダーを見る" msgid "Minimum stock" msgstr "最小在庫" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "有効なパーツでフィルタ" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "部品ロック状態によるフィルタリング" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "アセンブリ属性によるフィルタリング" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "サブカテゴリのパーツを含む" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "コンポーネント属性でフィルタ" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "テスト可能な属性によるフィルタリング" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "追跡可能属性でフィルタ" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "単位のある部品でフィルタ" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "IPNあり" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "内部部品番号を持つ部品によるフィルタリング" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "在庫あり" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "在庫がある部品でフィルタ" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "在庫の少ない部品で絞り込み" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "購入可能" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "購入可能な部品でフィルタ" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "販売可能" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "販売可能な部品でフィルタ" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "仮想部品" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "仮想部品でフィルタ" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "仮想部品ではない" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "テンプレート" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "テンプレートになっているパーツで絞り込み" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "改訂版" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "改定箇所による絞り込み" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "改定あり" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "リビジョンがある部品でフィルタリング" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "価格情報のある部品でフィルタリング" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "在庫のある部品で絞り込み" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "ユーザーが購読しているパートによるフィルタリング" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "ストックテイク" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "在庫情報のある部品で絞り込み" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "選択した部品の注文" @@ -8603,7 +8842,7 @@ msgstr "親部分を見る" msgid "Part templates cannot be edited, as the part is locked" msgstr "パートがロックされているため、パートテンプレートは編集できません。" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "選択" @@ -8708,19 +8947,19 @@ msgstr "詳細不明" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "プラグイン有効化の確認" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "プラグイン無効化の確認" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "選択したプラグインが有効になります。" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "選択したプラグインは無効化されます。" @@ -8733,19 +8972,19 @@ msgstr "選択したプラグインは無効化されます。" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "無効化する" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "有効化" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "選択したプラグインを有効化" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "選択したプラグインを更新" @@ -8753,76 +8992,76 @@ msgstr "選択したプラグインを更新" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "アンインストール" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "選択したプラグインをアンインストール" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "選択したプラグイン設定を削除" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "プラグインを有効化" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "プラグインが有効化されました" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "プラグインが無効化されました" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "プラグインをインストール" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "インストール" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "プラグインは正常にインストールされました" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "プラグインをアンインストールする" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "プラグインのアンインストールを確認" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "選択したプラグインがアンインストールされます。" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "プラグインが正常にアンインストールされました" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "プラグインが正常にアンインストールされました" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "プラグインの削除" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "このプラグイン設定を削除すると、関連するすべての設定とデータが削除されます。本当にこのプラグインを削除しますか?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "プラグインのリロード" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "プラグインは正常にリロードされました" @@ -8830,7 +9069,7 @@ msgstr "プラグインは正常にリロードされました" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "プラグインの再読み込み" @@ -8842,11 +9081,11 @@ msgstr "プラグインの再読み込み" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "プラグインをインストール" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "プラグイン詳細" @@ -8866,11 +9105,11 @@ msgstr "プラグイン詳細" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "サンプル" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "インストール済み" diff --git a/src/frontend/src/locales/ko/messages.po b/src/frontend/src/locales/ko/messages.po index e55e9925cc..4f9a6a45a2 100644 --- a/src/frontend/src/locales/ko/messages.po +++ b/src/frontend/src/locales/ko/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/lt/messages.po b/src/frontend/src/locales/lt/messages.po index f2a906eb66..b170d90624 100644 --- a/src/frontend/src/locales/lt/messages.po +++ b/src/frontend/src/locales/lt/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: lt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Lithuanian\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && (n%100>19 || n%100<11) ? 0 : (n%10>=2 && n%10<=9) && (n%100>19 || n%100<11) ? 1 : n%1!=0 ? 2: 3);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/lv/messages.po b/src/frontend/src/locales/lv/messages.po index 1143616f46..06f5754e6c 100644 --- a/src/frontend/src/locales/lv/messages.po +++ b/src/frontend/src/locales/lv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: lv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/nl/messages.po b/src/frontend/src/locales/nl/messages.po index 1bacf0cd97..ced604840b 100644 --- a/src/frontend/src/locales/nl/messages.po +++ b/src/frontend/src/locales/nl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: nl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Scan stoppen" msgid "Start scanning" msgstr "Start scannen" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Barcode" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Scannen" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Scan barcode" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Dit verwijdert de link naar de bijbehorende barcode" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Barcode loskoppelen" @@ -244,13 +246,13 @@ msgstr "Raport afdrukken" msgid "Remove this row" msgstr "Verwijder deze rij" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Lage voorraad" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "De bijbehorende afbeelding van dit item verwijderen?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Verwijderen" @@ -574,6 +576,7 @@ msgstr "Verwijderen" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Wis" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Versturen" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Er staan fouten in één of meer formuliervelden" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Bijwerken" @@ -880,7 +884,7 @@ msgstr "Bijwerken" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Verwijderen" @@ -898,154 +902,158 @@ msgstr "Verwijderen" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Inloggen succesvol" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Met succes ingelogd" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Inloggen mislukt" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Controleer uw invoer en probeer het opnieuw." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Inloggen mislukt" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Controleer uw invoer en probeer het opnieuw." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "E-mail levering gelukt" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Controleer uw inbox voor de login link. Als u een account heeft, ontvangt u een login link. Controleer ook in spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "E-mailbezorging mislukt" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Of ga verder met andere methoden" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Gebruikersnaam" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Je gebruikersnaam" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Wachtwoord" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Je wachtwoord" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Wachtwoord" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Wachtwoord opnieuw instellen" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Je wachtwoord" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Wachtwoord opnieuw instellen" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-mailadres" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Wij sturen u een link om in te loggen - als u geregistreerd bent" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Stuur mij een e-mail" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Gebruik gebruikersnaam en wachtwoord" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Inloggen" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "E-mail versturen" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registratie succesvol" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Bevestig uw e-mailadres om de registratie te voltooien" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Input error" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Dit wordt gebruikt voor een bevestiging" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Wachtwoord herhalen" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Herhaal wachtwoord" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registreren" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Of gebruik SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Heb je geen account?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Ga terug naar login" @@ -1058,7 +1066,7 @@ msgstr "Hostnaam" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Niet-gecategoriseerd" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Zoeken..." @@ -1197,13 +1205,13 @@ msgstr "{0} pictogrammen" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Zoeken" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Laden" @@ -1215,11 +1223,11 @@ msgstr "Geen resultaten gevonden" msgid "modelRenderer entry required for tables" msgstr "modelRenderer-invoer vereist voor tabellen" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Geen items beschikbaar" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Gegevens verwerken" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Er is een fout opgetreden" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opties" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Barcode acties" @@ -1418,10 +1427,6 @@ msgstr "Barcode acties" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Account instellingen" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Systeem instellingen" @@ -1791,7 +1796,7 @@ msgstr "Uitloggen" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Onderdelen" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Voorraad" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Productie" @@ -1824,24 +1829,24 @@ msgstr "Productie" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Kopen" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Verkoop" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigatie" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Alle meldingen bekijken" msgid "You have no unread notifications." msgstr "Je hebt geen ongelezen berichten." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "Resultaat" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Geef zoektekst op" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Zoek opties" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Leveranciers" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex zoeken" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Fabrikant" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Volledige woord zoeken" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Klanten" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Geef zoektekst op" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Zoek opties" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex zoeken" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Volledige woord zoeken" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Er is een fout opgetreden tijdens de zoekopdracht" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Geen resultaten" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Geen resultaten beschikbaar voor zoekopdracht" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Plug-in informatie" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Datum" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Datum" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Installatie pad" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Ingebouwd" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Plug-in instellingen" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Plug-in configuratie" @@ -2116,22 +2154,22 @@ msgstr "Onbekend model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Sjabloon deelparameter" msgid "Part Parameter Templates" msgstr "Sjablonen deelparameter" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Sjabloon test onderdeel" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Templatesjablonen voor onderdeel" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Templatesjablonen voor onderdeel" msgid "Supplier Part" msgstr "Leverancier onderdeel" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Leveranciers onderdelen" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Fabrikant onderdeel" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Fabrikant onderdelen" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Onderdeel categorie" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Onderdeel categorieën" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Voorraad item" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Voorraad item" msgid "Stock Items" msgstr "Voorraad items" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Voorraad locatie" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Voorraad locatie" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Voorraad locatie type" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Voorraad locatie types" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Voorraad geschiedenis" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Voorraad Historieën" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Bouwen" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Bedrijf" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Bedrijven" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Bedrijven" msgid "Project Code" msgstr "Project code" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Project codes" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Project codes" msgid "Purchase Order" msgstr "Inkooporder" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Inkooporders" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Inkooporder regel" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Inkooporder regels" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Inkooporder regels" msgid "Sales Order" msgstr "Verkooporder" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Verkooporders" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Verzending verkooporder" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Verzendingen verkooporders" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Retourorder" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Retourorders" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Retourneer bestelregel item" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Retourneer bestelregel items" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adres:" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adressen" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contact" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contacten" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Eigenaar" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Eigenaren" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Eigenaren" msgid "User" msgstr "Gebruiker" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Gebruikers" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Groep" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Groepen" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Sessie Importeren" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Sessies importeren" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Sessie Importeren" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Sessies importeren" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Label sjabloon" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Label sjablonen" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Rapporteer sjabloon" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Rapport sjablonen" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Plug-in configuraties" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Content type" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Content Types" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Content type" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Content Types" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Verzending" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inactief" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Geen voorraad" @@ -2536,10 +2575,10 @@ msgstr "Serienummer" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Serienummer" msgid "Quantity" msgstr "Aantal" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Batch" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "Bouw Uitvoer" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Batch" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Batch" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Voltooi Productie" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Productieorder is voltooid" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Verwijder productieorder" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Productieorder zijn verwijderd" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Annuleer productieorder" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Productieorders zijn geannuleerd" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Annuleer productieorder" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Productieorders zijn geannuleerd" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Toegewezen" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Bron locatie" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Selecteer de bron locatie voor de voorraadtoewijzing" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Selecteer de bron locatie voor de voorraadtoewijzing" msgid "Allocate Stock" msgstr "Voorraad toewijzen" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Voorraad items toegewezen" @@ -3623,7 +3671,7 @@ msgstr "Voorraad items toegewezen" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Geabonneerd" @@ -3651,31 +3699,31 @@ msgstr "Bovenliggende onderdeel categorie" msgid "Subscribe to notifications for this category" msgstr "Abonneer je op meldingen voor deze categorie" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Kies locatie" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Item bestemming geselecteerd" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Standaardlocatie voor de subcategorie" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Ontvangen voorraadlocatie geselecteerd" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Standaard locatie geselecteerd" @@ -3688,60 +3736,60 @@ msgstr "Standaard locatie geselecteerd" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Locatie invoeren" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Verpakking aanpassen" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Status wijzigen" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Opmerking toevoegen" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Locatie" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Op standaardlocatie opslaan" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Op standaardlocatie opslaan" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Op de bestemming van het item opslaan" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Winkel met reeds ontvangen voorraad" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Winkel met reeds ontvangen voorraad" msgid "Batch Code" msgstr "Batch code" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Serienummers" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Verpakking" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Opmerking" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Ontvangen" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Ontvang regelitems" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Ontvang regelitems" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Item ontvangen in voorraad" @@ -3854,40 +3906,40 @@ msgstr "Voer serienummer in voor nieuwe voorraad (of laat het leeg)" msgid "Stock Status" msgstr "Voorraad status" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Voorraad item toevoegen" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Selecteer het onderdeel om te installeren" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Laden..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Verplaats naar standaardlocatie" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Verplaatsen" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Verplaatsen" msgid "In Stock" msgstr "Op voorraad" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Toevoegen" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Aantal" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Voorraad toevoegen" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Voorraad verwijderen" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Voorraad verplaatsen " -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Tel voorraad" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Wijzig voorraad status" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Voorraad samenvoegen" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Voorraad items verwijderen" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Bovenliggende voorraad locatie" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Invoer" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Uitgelogd" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Succesvol uitgelogd" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Succesvol uitgelogd" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Uitgelogd" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Succesvol uitgelogd" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Check uw inbox voor een reset-link. Dit werkt alleen als u een account heeft. Controleer ook in spam box." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Reset is mislukt" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Ingelogd" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Succesvol ingelogd" @@ -4166,40 +4224,52 @@ msgstr "Weet u zeker dat u dit item wilt verwijderen?" msgid "Latest serial number" msgstr "Laatste serienummer" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Het wachtwoord is met succes ingesteld. U kunt nu inloggen met uw nieuwe wachtwoord" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Controleren of je al ingelogd bent" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Niets geselecteerd" @@ -4219,8 +4289,8 @@ msgstr "Niets geselecteerd" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Inloggen" @@ -4228,20 +4298,59 @@ msgstr "Inloggen" msgid "Logging out" msgstr "Uitloggen" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token ongeldig" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "U moet een geldig token opgeven om een nieuw wachtwoord in te stellen. Controleer uw inbox voor een herstellink." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Wachtwoord ingesteld" @@ -4249,6 +4358,14 @@ msgstr "Wachtwoord ingesteld" msgid "Set new password" msgstr "Stel nieuw wachtwoord in." +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Stel nieuw wachtwoord in." #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Foutmelding: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Toegang tot medewerkers" msgid "Superuser" msgstr "Administrator " -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Eenmalige aanmelding accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Niet actief" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Eenmalige aanmelding is niet ingeschakeld voor deze server" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Multifactor authenticatie is niet geconfigureerd voor uw account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Sleutel" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "De volgende e-mailadressen zijn gekoppeld aan uw account:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Hoofd" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Gecontroleerd" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Niet-geverifieerd" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "E-mailadres toevoegen" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-mailadres" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Maak primair" @@ -4731,46 +4880,143 @@ msgstr "Maak primair" msgid "Re-send Verification" msgstr "Verificatie opnieuw verzenden" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "E-mailadres toevoegen" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-mailadres" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "E-mail toevoegen" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Provider is niet geconfigureerd" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Niet geconfigureerd" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Er zijn geen sociale netwerkaccounts gekoppeld aan dit account." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "U kunt inloggen op uw account met behulp van een van de volgende accounts van derden" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token wordt gebruikt - geen acties" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Intrekken" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Geen tokens geconfigureerd" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Vervaldatum" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Laatst gezien op" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Sleutel" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Afgeronde hoeken" msgid "Loader" msgstr "Lader" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Alle eenheden" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Barcodes" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Prijzen" @@ -5128,19 +5382,19 @@ msgstr "Prijzen" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Labels" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Rapporteren" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Productieorders" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Uitgegeven door" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Aangemaakt" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Bouw details" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Regelitems" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Onvolledige uitvoer" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Toegewezen voorraad" @@ -5383,131 +5637,131 @@ msgstr "Test resultaten" msgid "Edit Build Order" msgstr "Bewerk bouwopdracht" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Voeg bouwopdracht toe" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Annuleer bouworder" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Deze order annuleren" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Houdt bouwopdracht" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Plaats deze bestelling in de wacht" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Bestelling geplaatst in de wacht" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Probleem bouwopdracht" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Geef deze bestelling uit" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Order uitgegeven" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Voltooi Bouw Opdracht" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Deze bestelling als voltooid markeren" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Bestelling voltooid" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Issue Order" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Bestelling voltooien" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Bouw order acties" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Bestelling bewerken" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Kopieer regel" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Bestelling vasthouden" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Bestelling annuleren" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Productieorder" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Website" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Telefoon nummer" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-mail adres" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Standaard valuta" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Standaard valuta" msgid "Supplier" msgstr "Leverancier" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabrikant" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Fabrikant" msgid "Customer" msgstr "Klant" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Bedrijf gegevens" @@ -5583,7 +5838,11 @@ msgstr "Bedrijf gegevens" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Geleverde onderdelen" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Geproduceerde onderdelen" @@ -5591,24 +5850,20 @@ msgstr "Geproduceerde onderdelen" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Geleverde onderdelen" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Toegewezen voorraad" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Bedrijf bewerken" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Bedrijf verwijderen" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Bedrijf acties" @@ -5647,13 +5902,6 @@ msgstr "Fabrikant onderdeel details" msgid "Parameters" msgstr "Parameters" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Leveranciers" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Leverancier onderdelen details" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Ontvangen voorraad" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Leverancier prijzen" @@ -5882,7 +6130,7 @@ msgstr "Trefwoorden" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Beschikbare voorraad" @@ -5942,7 +6190,7 @@ msgstr "In productie" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Vergrendeld" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Virtueel onderdeel" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Standaard leverancier" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Prijs bereik" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Onderdeel bewerken" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Onderdeel toevoegen" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Voorraad bestelling" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Acties van onderdeel" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Geen prijsgegevens gevonden voor dit deel." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Overzicht van de prijzen" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Aankoop geschiedenis" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Interne prijzen" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Stukslijst prijs" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Variant prijzen" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Verkoop prijs" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Verkoop geschiedenis" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maximaal" @@ -6173,7 +6421,7 @@ msgstr "Gepland" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimaal" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Nieuwe voorraadcontrole rapport" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimale waarde" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maximale waarde" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Fabrikant" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Totale prijs" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Onderdeel" @@ -6277,13 +6520,13 @@ msgstr "Onderdeel" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimale prijs" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maximale prijs" @@ -6344,65 +6587,65 @@ msgstr "Prijs verschil" msgid "Price" msgstr "Prijs" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Vernieuwen van prijsgegevens" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Prijsgegevens bijgewerkt" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Bijwerken prijsgegevens mislukt" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Prijzen bewerken" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Prijs categorie" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Overschrijf prijzen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Algemene prijzen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Inkoopprijs" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Laatst bijgewerkt" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Prijzen niet ingesteld" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Prijsgegevens zijn niet berekend voor dit deel" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Prijzen acties" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Vernieuwen" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Ververs prijsgegevens" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Prijsgegevens bewerken" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Leverancier prijs" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Variant onderdeel" @@ -6449,13 +6692,13 @@ msgstr "Variant onderdeel" msgid "Edit Purchase Order" msgstr "Bewerk inkooporder" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Inkooporder toevoegen" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Referentie leverancier" @@ -6465,24 +6708,24 @@ msgstr "Referentie leverancier" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Afgeronde regel items" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Bestelling valuta" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Totale kosten" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Datum van uitgifte" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Datum van uitgifte" msgid "Completion Date" msgstr "Datum van afronding" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Order Details" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Extra regelitems" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Inkooporder aanmaken" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Order annuleren" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Order vasthouden" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Bestelling afronden" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Order acties" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Retour order bewerken" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Retourorder toevoegen" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Issue retour order" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Annuleer retour order" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Retour order vasthouden" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Voltooi retour bestelling" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Klanten" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Voltooide Verzendingen" @@ -6596,46 +6835,46 @@ msgstr "Voltooide Verzendingen" msgid "Edit Sales Order" msgstr "Verkooporder bewerken" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Voeg Verkooporder toe" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Zending" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Verkooporder uitgeven" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Verkooporder annuleren" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Bestelling vasthouden" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Verkooporder voltooien" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Bestelling verzenden" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Tabel filters" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Weet u zeker dat u de geselecteerde items wilt verwijderen?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "Deze actie kan niet ongedaan worden gemaakt" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Verwijder de geselecteerde records" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Gegevens vernieuwen" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Bouwen" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Toon verbruikte items" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Heeft prijzen" @@ -7497,7 +7736,7 @@ msgstr "Factuur van materialen kan niet worden bewerkt, omdat het onderdeel is v #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Assemblage" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Toon actieve assemblage orders" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Volgbaar" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "Toon optionele regels" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Testbaar" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "Abonneer je op meldingen voor deze categorie" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Inclusief subcategorieën" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Toon sjablonen met keuzes" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Heeft eenheden" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Minimale voorraad" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filter op actieve status van onderdeel" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filter op vergrendelde status van onderdeel" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filteren op samenvoegen attribuut" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Inclusief onderdelen in subcategorieën" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filter op component kenmerk" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Filter op testbare eigenschap" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filteren op traceerbare kenmerk" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filter op onderdelen die eenheden bevatten" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Heeft IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filter op onderdelen met een intern deelnummer" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Heeft voorraad" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filter op onderdelen die voorraad hebben" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filter op onderdelen met een lage voorraad" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Aankoopbaar" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filteren op onderdelen die aankoopbaar zijn" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Verkoopbaar" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filter op delen die verkoopbaar zijn" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtueel" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filter op virtuele onderdelen" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Niet virtueel" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "Is een sjabloon" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Filter op onderdelen die sjablonen zijn" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "Is revisie" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Filter op onderdelen die revisies zijn" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Heeft revisies" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Filter op onderdelen die revisies hebben" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Filter op onderdelen met prijsinformatie" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Filter op onderdelen die beschikbare voorraad hebben" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Filter op delen waarop de gebruiker geabonneerd is" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "Heeft voorraad" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Filteren op onderdelen met voorraadgegevens" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "Bovenliggend onderdeel bekijken" msgid "Part templates cannot be edited, as the part is locked" msgstr "Onderdelen sjablonen kunnen niet worden bewerkt, omdat het onderdeel is vergrendeld" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Selecteer" @@ -8708,19 +8947,19 @@ msgstr "Beschrijving niet beschikbaar" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Plug-in activeren bevestigen" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Plug-in deactiveren bevestigen" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "De geselecteerde plug-in zal worden geactiveerd" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "De geselecteerde plug-in zal worden gedeactiveerd" @@ -8733,19 +8972,19 @@ msgstr "De geselecteerde plug-in zal worden gedeactiveerd" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Uitzetten" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Inschakelen" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Activeer geselecteerde plug-in" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Geselecteerde plug-in bijwerken" @@ -8753,76 +8992,76 @@ msgstr "Geselecteerde plug-in bijwerken" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Verwijderen" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Geselecteerde plug-in verwijderen" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Geselecteerde plug-in configuratie verwijderen" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Activeer Plug-in" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Plug-in installeren" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "installeren" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plug-in succesvol geïnstalleerd" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Plug-in verwijderen bevestigen" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/no/messages.po b/src/frontend/src/locales/no/messages.po index dfcc49f1fb..02137d10d4 100644 --- a/src/frontend/src/locales/no/messages.po +++ b/src/frontend/src/locales/no/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: no\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Stopp skanning" msgid "Start scanning" msgstr "Start skanningen" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Fjern strekkodekobling" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Lav lagerbeholdning" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Fjern" @@ -574,6 +576,7 @@ msgstr "Fjern" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Send" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Oppdater" @@ -880,7 +884,7 @@ msgstr "Oppdater" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Slett" @@ -898,154 +902,158 @@ msgstr "Slett" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Innlogging vellykket" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Innloggingen mislyktes" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Kontroller inndataene og prøv igjen." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Innloggingen mislyktes" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Kontroller inndataene og prøv igjen." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Levering av e-post vellykket" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Sjekk innboksen din for innloggingslenken. Hvis du har en konto, får du en innloggingslenke. Sjekk også i spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Brukernavn" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Your username" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Passord" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Ditt passord" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Passord" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Tilbakestill passord" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Ditt passord" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Tilbakestill passord" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-post" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Vi sender deg en lenke for å logge inn - hvis du er registrert" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Send meg en e-post" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Logg inn" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Send e-post" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Inndatafeil" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "Vert" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Søk" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Laster" @@ -1215,11 +1223,11 @@ msgstr "Ingen resultater funnet" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Strekkodehandlinger" @@ -1418,10 +1427,6 @@ msgstr "Strekkodehandlinger" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Kontoinnstillinger" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Systeminnstillinger" @@ -1791,7 +1796,7 @@ msgstr "Logg ut" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Deler" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Lagerbeholdning" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Innkjøp" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Salg" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigasjon" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "Du har ingen uleste varsler." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultater" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Skriv inn søketekst" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Alternativer for søk" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Leverandører" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex-søk" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Produsenter" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Helordsøk" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Kunder" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Skriv inn søketekst" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Alternativer for søk" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex-søk" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Helordsøk" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Det oppstod en feil under søk" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Ingen resultater tilgjengelig for søk" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Dato" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Dato" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Innebygd" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Innstillinger for Utvidelser" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "Ukjent modell: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Mal for Delparameter" msgid "Part Parameter Templates" msgstr "Maler for Delparameter" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "Leverandørdel" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Leverandørdeler" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Produsentdel" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Produsentdeler" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Delkategori" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Delkategorier" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Lagervare" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Lagervare" msgid "Stock Items" msgstr "Lagervarer" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Lagerplassering" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerplasseringer" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Lagerhistorikk" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Lagerhistorikk" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Produksjon" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Produksjoner" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Firma" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Firma" msgid "Project Code" msgstr "Prosjektkode" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Prosjektkoder" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Prosjektkoder" msgid "Purchase Order" msgstr "Innkjøpsordre" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Innkjøpsordrer" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Ordrelinje for innkjøpsordre" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Ordrelinjer for innkjøpsordre" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Ordrelinjer for innkjøpsordre" msgid "Sales Order" msgstr "Salgsordre" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Salgsordrer" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Salgsordreforsendelse" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Salgsordreforsendelser" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Returordre" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Returordrer" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresser" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakter" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Eier" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Eiere" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Eiere" msgid "User" msgstr "Bruker" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Brukere" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupper" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Forsendelse" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Ingen lagerbeholdning" @@ -2536,10 +2575,10 @@ msgstr "Serienummer" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Serienummer" msgid "Quantity" msgstr "Antall" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Tildelt" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "Tildel lagerbeholdning" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Overordnet del-kategori" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Serienumre" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "Mottatt" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Angi serienumre for ny lagerbeholdning (eller la stå tom)" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "På lager" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Legg til" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Tell" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Overfør lager" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Tell beholdning" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Verdi" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Sjekk innboksen for en nullstillingslenke. Dette fungerer bare hvis du har en konto. Sjekk også i spam." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Tilbakestilling feilet" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Passordet er blitt satt. Du kan nå logge inn med ditt nye passord" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Sjekker om du allerede er innlogget" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Ingen utvalg" @@ -4219,8 +4289,8 @@ msgstr "Ingen utvalg" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Innlogging" @@ -4228,20 +4298,59 @@ msgstr "Innlogging" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Ugyldig token" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Du må oppgi et gyldig token for å angi et nytt passord. Sjekk innboksen for en tilbakestillingslenke." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Passord angitt" @@ -4249,6 +4358,14 @@ msgstr "Passord angitt" msgid "Set new password" msgstr "Angi nytt passord" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Angi nytt passord" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Feil: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "\"Single Sign On\"-kontoer" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Ikke aktivert" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Single Sign On er ikke aktivert for denne serveren" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifaktor" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Multifaktor-autentisering er ikke konfigurert for din konto" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Følgende e-postadresser er tilknyttet din konto:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primær" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Bekreftet" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Ubekreftet" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Legg til e-postadresse" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-post" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-postadresse" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Gjør til primær" @@ -4731,46 +4880,143 @@ msgstr "Gjør til primær" msgid "Re-send Verification" msgstr "Re-send bekreftelse" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Legg til e-postadresse" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-post" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-postadresse" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Legg til e-post" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Leverandør er ikke konfigurert" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Ikke konfigurert" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Det finnes ingen sosiale nettverkskontoer koblet til denne kontoen." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Du kan logge inn på kontoen din ved hjelp av følgende tredjepartskontoer" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Kantradius" msgid "Loader" msgstr "Laster" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Strekkoder" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Prising" @@ -5128,19 +5382,19 @@ msgstr "Prising" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiketter" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Rapportering" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Produksjonsordrer" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Opprettet" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Produksjonsdetaljer" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Ordrelinjer" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Ufullstendige artikler" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "Rediger produksjonsordre" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Legg til produksjonsordre" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Produksjonsordre-handlinger" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Nettside" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "Leverandør" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Produsent" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Produsent" msgid "Customer" msgstr "Kunde" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Leverte Deler" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Produserte deler" @@ -5591,24 +5850,20 @@ msgstr "Produserte deler" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Leverte Deler" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Tildelt lagerbeholdning" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Rediger Bedrift" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Bedriftshandlinger" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "Parametere" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Leverandører" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Mottatt lagerbeholdning" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "Nøkkelord" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "Under produksjon" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Prisområde" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Rediger del" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Delhandlinger" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Produsenter" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Total pris" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponent" @@ -6277,13 +6520,13 @@ msgstr "Komponent" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Destinasjon" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Ordredetaljer" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Ordrehandlinger" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Kunder" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Fullførte forsendelser" @@ -6596,46 +6835,46 @@ msgstr "Fullførte forsendelser" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Tabellfiltre" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Slett valgte oppføringer" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Oppdater data" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Produseres" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Vis forbruksartikler" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Har prising" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Sammenstilling" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Vis aktive sammenstillinger" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Sporbar" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Inkluder underkategorier" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Vis maler med valg" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Har enheter" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Minimumsbeholdning" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrer etter del aktiv-status" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrer etter sammenstillingsattributt" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Inkluder deler i underkategorier" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrer etter komponentattributt" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtrer etter sporbar attributt" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtrer etter deler som har enheter" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Har IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtrer etter deler som har internt delnummer" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Har beholdning" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filtrer etter deler som har lagerbeholdning" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtrer etter deler som har lav lagerbeholdning" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Kjøpbar" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtrer etter deler som kan kjøpes" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Salgbar" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtrer etter deler som kan selges" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuell" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtrer etter deler som er virtuelle" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Ikke virtuell" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "Beskrivelse ikke tilgjengelig" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Bekreft aktivering av utvidelse" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Bekreft deaktivering av utvidelse" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Deaktiver" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Aktivér" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Aktivér utvidelse" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Installer Utvidelse" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Installer" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Utvidelse installert" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Utvidelser lastet inn på nytt" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Utvidelser ble lastet inn på nytt" @@ -8830,7 +9069,7 @@ msgstr "Utvidelser ble lastet inn på nytt" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Last utvidelser på nytt" @@ -8842,11 +9081,11 @@ msgstr "Last utvidelser på nytt" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Installer Utvidelse" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Eksempel" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Installert" diff --git a/src/frontend/src/locales/pl/messages.po b/src/frontend/src/locales/pl/messages.po index 90c6255cbe..fb13293234 100644 --- a/src/frontend/src/locales/pl/messages.po +++ b/src/frontend/src/locales/pl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Polish\n" "Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" @@ -50,52 +50,54 @@ msgstr "Zatrzymaj skanowanie" msgid "Start scanning" msgstr "Rozpocznij skanowanie" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Kod kreskowy" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Zeskanuj kod kreskowy" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Odłącz Kod Kreskowy" @@ -244,13 +246,13 @@ msgstr "Drukuj raporty" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Mała ilość w magazynie" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Usunąć powiązany obrazek z tego elementu?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Usuń" @@ -574,6 +576,7 @@ msgstr "Usuń" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Wyczyść" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Zatwierdź" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Istnieją błędy dla jednego lub więcej pól formularzy" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Aktualizuj" @@ -880,7 +884,7 @@ msgstr "Aktualizuj" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Usuń" @@ -898,154 +902,158 @@ msgstr "Usuń" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Zalogowano pomyślnie" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Zalogowano pomyślnie" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Logowanie nie powiodło się" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Sprawdź dane i spróbuj ponownie." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Logowanie nie powiodło się" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Sprawdź dane i spróbuj ponownie." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Wiadomość dostarczona" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Dostawa poczty nie powiodła się" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Lub kontynuuj za pomocą innych metod" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nazwa użytkownika" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Twoja nazwa użytkownika" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Hasło" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Twoje hasło" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Hasło" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Resetuj hasło" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Twoje hasło" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Resetuj hasło" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Adres E-Mail" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Wyślemy Ci link do logowania - jeśli jesteś zarejestrowany" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Wyślij mi e-mail" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Użyj nazwy użytkownika i hasła" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Zaloguj się" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Wyślij e-mail" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Rejestracja powiodła się" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Proszę potwierdzić swój adres e-mail, aby zakończyć rejestrację" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Błąd danych wejściowych" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "To będzie używane do potwierdzenia" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Hasło (powtórz)" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Powtórz hasło" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Rejestracja" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Lub użyj SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Nie masz konta?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Wróć do logowania" @@ -1058,7 +1066,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Bez kategorii" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Szukaj..." @@ -1197,13 +1205,13 @@ msgstr "{0} ikon(y)" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Szukaj" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Wczytuję" @@ -1215,11 +1223,11 @@ msgstr "Nie znaleziono wyników" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Brak wpisów" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Przetwarzanie danych" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Wystąpił błąd" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Akcje kodów kreskowych" @@ -1418,10 +1427,6 @@ msgstr "Akcje kodów kreskowych" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Ustawienia konta" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Ustawienia systemowe" @@ -1791,7 +1796,7 @@ msgstr "Wyloguj się" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Komponenty" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Stan" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Zakupy" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Sprzedaże" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Nawigacja" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Pokaż wszystkie powiadomienia" msgid "You have no unread notifications." msgstr "Nie masz żadnych nowych powiadomień." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "wyniki" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Wpisz frazę, którą chcesz wyszukać" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opcje wyszukiwania" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Wyszukiwanie Regex" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Wyszukiwanie całych słów" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Wpisz frazę, którą chcesz wyszukać" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opcje wyszukiwania" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Wyszukiwanie Regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Wyszukiwanie całych słów" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Wystąpił błąd podczas wyszukiwania" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Brak dostępnych wyników wyszukiwania" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Ustawienia wtyczki" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Konfiguracja wtyczki" @@ -2116,22 +2154,22 @@ msgstr "Nieznany model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "Część dostawcy" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Części dostawcy" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Część Producenta" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Części producenta" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Kategoria części" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Kategorie części" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Element magazynowy" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Element magazynowy" msgid "Stock Items" msgstr "Elementy magazynowe" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Lokacja stanu" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lokacje stanów" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Historia magazynu" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Historia magazynu" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Kompilacja" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Kompilacje" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Firmy" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Firmy" msgid "Project Code" msgstr "Kod projektu" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Kody projektu" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Kody projektu" msgid "Purchase Order" msgstr "Zlecenie zakupu" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Zlecenia zakupu" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Pozycja zlecenia zakupu" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Pozycje zlecenia zakupu" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Pozycje zlecenia zakupu" msgid "Sales Order" msgstr "Zlecenie sprzedaży" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Zlecenia Sprzedaży" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adres" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresy" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakty" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Właściciel" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Właściciele" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Właściciele" msgid "User" msgstr "Użytkownik" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Użytkownicy" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupa" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupy" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importuj sesje" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importuj sesje" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importuj sesje" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importuj sesje" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Szablon etykiety" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Szablony etykiet" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Szablon Raportu" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Szablony raportów" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Konfiguracje wtyczki" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Typ zawartości" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Typy zawartości" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Typ zawartości" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Typy zawartości" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Wysyłka" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Nieaktywny" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Brak w magazynie" @@ -2536,10 +2575,10 @@ msgstr "Numer seryjny" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Numer seryjny" msgid "Quantity" msgstr "Ilość" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Kategoria części nadrzędnej" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Wybierz lokalizację" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Wybrano domyślną lokalizację" @@ -3688,60 +3736,60 @@ msgstr "Wybrano domyślną lokalizację" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Ustaw lokalizację" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Dostosuj opakowanie" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Zmień status" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Dodaj notatkę" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Lokalizacja" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Zapisz w domyślnej lokalizacji" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Zapisz w domyślnej lokalizacji" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "Kod partii" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Numery seryjne" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Opakowanie" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Notatka" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Otrzymano" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Wprowadź numery seryjne dla nowego stanu (lub pozostaw puste)" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Dodaj element magazynowy" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Ładowanie..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Przenieś do domyślnej lokalizacji" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Przenieś" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Przenieś" msgid "In Stock" msgstr "Na stanie" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Dodaj" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Ilość" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Dodaj stan" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Usuń stan" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Przenieś stan" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Policz stan" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Zmień status stanu magazynowego" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Wylogowano" - -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Wylogowano" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Zalogowano" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "Czy na pewno chcesz usunąć ten element?" msgid "Latest serial number" msgstr "Ostatni numer seryjny" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Hasło zostało ustawione pomyślnie. Możesz teraz zalogować się przy użyciu nowego hasła" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Sprawdzanie, czy jesteś już zalogowany" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Brak wyboru" @@ -4219,8 +4289,8 @@ msgstr "Brak wyboru" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Zaloguj się" @@ -4228,20 +4298,59 @@ msgstr "Zaloguj się" msgid "Logging out" msgstr "Wylogowywanie" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token jest nieprawidłowy" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Musisz podać poprawny token aby ustawić nowe hasło. Sprawdź swoją skrzynkę odbiorczą aby uzyskać link do zresetowania." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Hasło ustawione" @@ -4249,6 +4358,14 @@ msgstr "Hasło ustawione" msgid "Set new password" msgstr "Ustaw nowe hasło" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Ustaw nowe hasło" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Błąd: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Wyłączone" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Promień obramowania" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Kody kreskowe" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Cennik" @@ -5128,19 +5382,19 @@ msgstr "Cennik" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etykiety" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Raportowanie" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Zlecenia wykonania" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Strona internetowa" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Wirtualny" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/pt/messages.po b/src/frontend/src/locales/pt/messages.po index ee00a6bc3f..f0c3bd91a2 100644 --- a/src/frontend/src/locales/pt/messages.po +++ b/src/frontend/src/locales/pt/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Portuguese\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Parar a digitalização" msgid "Start scanning" msgstr "Iniciar a digitalização" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Ler Código de Barras" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Desatribuir Código de Barras" @@ -244,13 +246,13 @@ msgstr "Imprimir Relatórios" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Estoque Baixo" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Remover a imagem associada a este item?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Eliminar" @@ -574,6 +576,7 @@ msgstr "Eliminar" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Apagar" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Enviar" @@ -872,7 +876,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Atualizar" @@ -881,7 +885,7 @@ msgstr "Atualizar" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Eliminar" @@ -899,154 +903,158 @@ msgstr "Eliminar" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Inicio de sessão com sucesso" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Sessão iniciada com sucesso" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Não foi possível iniciar a sessão" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Verifique suas informações e tente novamente." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Não foi possível iniciar a sessão" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Verifique suas informações e tente novamente." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Envio bem sucedido" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Verifique na sua caixa de correio o link de login. Se tiver uma conta, irá receber um link de login. Verifique também a caixa de spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Falha na entrega de e-mail" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Ou continuar com outros métodos" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nome de utilizador" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "O seu nome de utilizador" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Palavra-chave" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "A sua palavra-passe" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Palavra-chave" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Redefinir palavra-passe" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "A sua palavra-passe" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Redefinir palavra-passe" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-mail" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Enviaremos um link para fazer o login - se você está registrado" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Envie-me uma mensagem de correio electrónico" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Nome de usuário e senha" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Iniciar Sessão" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Enviar e-mail" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registo efectuado com sucesso" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Por favor, confirme seu endereço de e-mail para concluir o registro" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Erro de entrada" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Isto será usado para uma confirmação" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Repetir senha" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Repetir senha" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registar" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Ou use SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Não possui conta?\n" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Voltar para o Login" @@ -1059,7 +1067,7 @@ msgstr "Servidor" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1180,7 +1188,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Pesquisa..." @@ -1198,13 +1206,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Buscar" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "A carregar" @@ -1216,11 +1224,11 @@ msgstr "Nenhum resultado encontrado" msgid "modelRenderer entry required for tables" msgstr "entrada do modelRenderer necessária para tabelas" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Nenhuma entrada disponível" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1294,6 +1302,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1410,8 +1419,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Ações de código de barras" @@ -1419,10 +1428,6 @@ msgstr "Ações de código de barras" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1746,8 +1751,8 @@ msgstr "Definições da Conta" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Definições de Sistema" @@ -1792,7 +1797,7 @@ msgstr "Encerrar sessão" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1803,8 +1808,8 @@ msgstr "Peças" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1814,7 +1819,7 @@ msgstr "Estoque" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1825,24 +1830,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Comprando" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Vendas" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1860,16 +1865,14 @@ msgid "Navigation" msgstr "Navegação" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1892,45 +1895,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "Não tem novas notificações" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultados" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Introduzir texto de pesquisa" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opções de Pesquisa" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Fornecedores" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Busca por Regex" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Pesquisar palavras inteiras" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Clientes" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Introduzir texto de pesquisa" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opções de Pesquisa" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Busca por Regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Pesquisar palavras inteiras" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Ocorreu um erro durante a busca" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Sem Resultados" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Não há resultados disponíveis para a pesquisa" @@ -1966,15 +2004,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2009,8 +2047,8 @@ msgid "Date" msgstr "Data" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2018,10 +2056,10 @@ msgstr "Data" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2040,7 +2078,7 @@ msgstr "Caminho de Instalação" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Embutido" @@ -2054,7 +2092,7 @@ msgid "Plugin Settings" msgstr "Configurações da Extensão" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configuração de Extensão" @@ -2117,22 +2155,22 @@ msgstr "Modelo desconhecido: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2155,15 +2193,15 @@ msgstr "Modelo de Parâmetro da Peça" msgid "Part Parameter Templates" msgstr "Modelos de Parâmetro da Peça" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Modelos de Teste da Peça" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Modelos de Teste da Peça" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2174,44 +2212,46 @@ msgstr "Modelos de Teste da Peça" msgid "Supplier Part" msgstr "Fornecedor da Peça" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Peças de fornecedor" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Fabricante da peça" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Peças do fabricante" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Categoria da peça" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Categorias da Peça" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Item de Estoque" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2220,70 +2260,70 @@ msgstr "Item de Estoque" msgid "Stock Items" msgstr "Itens de Estoque" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Localização de Stock" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Localizações de Stock" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Tipo de Local de Estoque" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Tipo de Local de Estoque" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Histórico de Estoque" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Histórico de Estoque" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Produção" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Produções" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Linha de produção" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Linhas de produção" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Empresa" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Empresas" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2292,15 +2332,15 @@ msgstr "Empresas" msgid "Project Code" msgstr "Código do projeto" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Códigos do Projeto" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2308,27 +2348,27 @@ msgstr "Códigos do Projeto" msgid "Purchase Order" msgstr "Pedido de Compra" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Pedidos de compra" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Pedido de compra da linha" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Pedido de compra das linhas" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2338,77 +2378,76 @@ msgstr "Pedido de compra das linhas" msgid "Sales Order" msgstr "Pedido de Venda" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Pedidos de vendas" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Envio do Pedido de Venda" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Envios dos Pedidos de Vendas" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Pedido de Devolução" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Pedidos de Devolução" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Endereço" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Endereços" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contato" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contatos" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Proprietário" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Proprietários" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2419,80 +2458,80 @@ msgstr "Proprietários" msgid "User" msgstr "Utilizador" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Utilizadores" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupos" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Modelo de Etiqueta" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Modelos de Etiqueta" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Modelo de relatório" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Modelos de relatório" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configurações de Extensões" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2513,7 +2552,7 @@ msgstr "Envios" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2521,7 +2560,7 @@ msgstr "Inativo" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Sem Estoque" @@ -2537,10 +2576,10 @@ msgstr "Número de Série" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2561,6 +2600,22 @@ msgstr "Número de Série" msgid "Quantity" msgstr "Quantidade" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Lote" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3046,7 +3101,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3510,7 +3565,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3518,22 +3573,15 @@ msgstr "" msgid "Build Output" msgstr "Saída da Produção" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Lote" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3549,59 +3597,59 @@ msgstr "Lote" msgid "Status" msgstr "Estado" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Concluir Saídas de Produção" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "O Pedido de produção foi concluído" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Cancelar Saída de Produção" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Os Pedidos de produção foram cancelados" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancelar Saída de Produção" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Os Pedidos de produção foram cancelados" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancelar Saída de Produção" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Os Pedidos de produção foram cancelados" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Alocado" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Localização de Origem" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3610,8 +3658,8 @@ msgstr "" msgid "Allocate Stock" msgstr "Alocar estoque" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3624,7 +3672,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3652,31 +3700,31 @@ msgstr "Categoria parente da peça" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Escolher Localização" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destino do item selecionado" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Localização padrão da categoria de peça selecionada" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Localização do estoque recebido selecionada" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Localização padrão selecionada" @@ -3689,60 +3737,60 @@ msgstr "Localização padrão selecionada" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Definir localização" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Alterar Estado" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Localização" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Armazenar no local padrão" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Armazenar no local padrão" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Armazenar no destino do item de linha" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Armazenar com estoque já recebido" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3754,31 +3802,35 @@ msgstr "Armazenar com estoque já recebido" msgid "Batch Code" msgstr "Código de Lote" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Números de Série" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3786,23 +3838,19 @@ msgstr "" msgid "Packaging" msgstr "Embalagem" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Nota" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3810,15 +3858,19 @@ msgstr "SKU" msgid "Received" msgstr "Recebido" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Receber item de linha" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3855,40 +3907,40 @@ msgstr "Insira os números de série para novo estoque (ou deixe em branco)" msgid "Stock Status" msgstr "Estado do Estoque" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Adicionar item de Estoque" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "A carregar..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Mover para o local padrão" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Mover" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3898,50 +3950,50 @@ msgstr "Mover" msgid "In Stock" msgstr "Em Estoque" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Adicionar" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Contar" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Adicionar Estoque" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Remover Estoque" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transferir Estoque" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3950,44 +4002,44 @@ msgstr "" msgid "Count Stock" msgstr "Contar Estoque" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Alterar estado do Estoque" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Mesclar Estoque" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Excluir Itens de Estoque" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Localização parente de Estoque" @@ -3999,7 +4051,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4010,7 +4062,7 @@ msgstr "" msgid "Value" msgstr "Valor" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4062,17 +4114,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Sessão terminada" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Sessão terminada com sucesso" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4082,20 +4132,28 @@ msgstr "Sessão terminada com sucesso" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Sessão terminada" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Sessão terminada com sucesso" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Verifique a sua caixa de entrada com um link para redefinir. Isso só funciona se você já tiver uma conta. Cheque no também no spam." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Falha ao redefinir" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Sessão Iniciada" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Sessão iniciada com êxito" @@ -4167,40 +4225,52 @@ msgstr "Tem certeza de que deseja excluir este item?" msgid "Latest serial number" msgstr "Número de Série mais recente" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "A senha foi definida com sucesso. Você agora pode fazer login com sua nova senha" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4208,7 +4278,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Verificando se você já fez login" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nenhuma seleção" @@ -4220,8 +4290,8 @@ msgstr "Nenhuma seleção" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Iniciar sessão" @@ -4229,20 +4299,59 @@ msgstr "Iniciar sessão" msgid "Logging out" msgstr "Terminando a sessão" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token inválido" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Você precisa fornecer um token válido para definir uma nova senha. Verifique sua caixa de entrada para um link de redefinição." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Palavra-passe definida" @@ -4250,6 +4359,14 @@ msgstr "Palavra-passe definida" msgid "Set new password" msgstr "Definir nova palavra-passe" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4258,6 +4375,18 @@ msgstr "Definir nova palavra-passe" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Erro: {0}" @@ -4552,10 +4681,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4670,61 +4795,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Contas de Login Único" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Não habilitado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Acesso único não está habilitado para este servidor" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifator" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "A autenticação de múltiplos fatores não está configurada para sua conta" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Os seguintes endereços de e-mail estão associados à sua conta:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primário" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Não verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Adicionar Endereço de Email" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Endereço de E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Tornar Primária" @@ -4732,46 +4881,143 @@ msgstr "Tornar Primária" msgid "Re-send Verification" msgstr "Reenviar Verificação" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Adicionar Endereço de Email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Endereço de E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Adicionar Email" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "O provedor não foi configurado" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Não configurado" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Não há nenhuma rede social conectada a essa conta." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Você pode entrar na sua conta usando qualquer uma das seguintes contas de terceiros" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4844,6 +5090,14 @@ msgstr "Raio da Margem" msgid "Loader" msgstr "Carregador" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5113,11 +5367,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Códigos de barras" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Preços" @@ -5129,19 +5383,19 @@ msgstr "Preços" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiquetas" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Relatórios" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Ordens de Produções" @@ -5215,7 +5469,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5223,7 +5477,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5252,7 +5506,7 @@ msgstr "Emitido por" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5276,7 +5530,7 @@ msgstr "Criado" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5293,7 +5547,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5333,13 +5587,13 @@ msgid "Build Details" msgstr "Detalhes da Produção" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Itens de linha" @@ -5348,7 +5602,7 @@ msgid "Incomplete Outputs" msgstr "Saídas Incompletas" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5384,131 +5638,131 @@ msgstr "Resultados do teste" msgid "Edit Build Order" msgstr "Editar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Novo Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Cancelar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Ações do Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Cancelar pedido" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5524,28 +5778,28 @@ msgstr "Ordem de Produção" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Site" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Número de Telefone" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Endereço de Email" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Moeda Padrão" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5553,16 +5807,17 @@ msgstr "Moeda Padrão" msgid "Supplier" msgstr "Fornecedor" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabricante" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5576,7 +5831,7 @@ msgstr "Fabricante" msgid "Customer" msgstr "Cliente" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5584,7 +5839,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Peças fornecidas" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Peças Fabricadas" @@ -5592,24 +5851,20 @@ msgstr "Peças Fabricadas" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Peças fornecidas" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Estoque Atribuído" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Editar Empresa" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Ações da Empresa" @@ -5648,13 +5903,6 @@ msgstr "Detalhes da Peça do Fabricante" msgid "Parameters" msgstr "Parâmetros" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Fornecedores" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5717,13 +5965,13 @@ msgid "Supplier Part Details" msgstr "Detalhes da Peça do Fornecedor" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Estoque Recebido" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Preço do Fornecedor" @@ -5883,7 +6131,7 @@ msgstr "Palavras-chave" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Estoque Disponível" @@ -5943,7 +6191,7 @@ msgstr "Em Produção" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5983,7 +6231,7 @@ msgid "Virtual Part" msgstr "Peça virtual" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6004,8 +6252,8 @@ msgstr "Fornecedor Padrão" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Intervalo de Preço" @@ -6071,8 +6319,8 @@ msgid "Edit Part" msgstr "Editar Peça" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Adicionar Peça" @@ -6111,7 +6359,7 @@ msgid "Order Stock" msgstr "Encomendar Estoque" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Ações da Peça" @@ -6128,7 +6376,7 @@ msgid "No pricing data found for this part." msgstr "Nenhum dado de preço foi encontrado para esta parte." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Resumo de Preços" @@ -6137,33 +6385,33 @@ msgid "Purchase History" msgstr "Histórico de Compras" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Preço Interno" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Preço da BOM" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Preço Variável" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Preço de Venda" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Histórico de Venda" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Máximo" @@ -6174,7 +6422,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Mínimo" @@ -6237,20 +6485,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Valor Mínimo" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Valor Máximo" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Fabricantes" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6268,7 +6511,7 @@ msgstr "Preço Total" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Componente" @@ -6278,13 +6521,13 @@ msgstr "Componente" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Preço Mínimo" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Preço Máximo" @@ -6345,65 +6588,65 @@ msgstr "Quebra de Preço" msgid "Price" msgstr "Preço" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Categoria de Preços" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Alterar Preços" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Preços Gerais" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Preço de Compra" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Última Atualização" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6442,7 +6685,7 @@ msgid "Supplier Price" msgstr "Preço do fornecedor" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Peça Variante" @@ -6450,13 +6693,13 @@ msgstr "Peça Variante" msgid "Edit Purchase Order" msgstr "Editar ordem de compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Adicionar Ordem de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Referencia do fornecedor" @@ -6466,24 +6709,24 @@ msgstr "Referencia do fornecedor" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Itens de Linha Concluídos" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Destino" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Moeda do pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6495,13 +6738,13 @@ msgstr "Custo Total" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6510,37 +6753,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Detalhes do pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Ações do Pedido" @@ -6556,35 +6799,31 @@ msgid "Edit Return Order" msgstr "Editar Pedido de Devolução" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Novo Pedido de Devolução" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Clientes" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Envios concluídos" @@ -6597,46 +6836,46 @@ msgstr "Envios concluídos" msgid "Edit Sales Order" msgstr "Editar Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Novo Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7173,7 +7412,7 @@ msgid "Filter" msgstr "Filtro" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filtros de tabela" @@ -7246,20 +7485,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Remover registos selecionados" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Atualizar dados" @@ -7302,7 +7541,7 @@ msgid "Building" msgstr "Produzindo" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7419,7 +7658,7 @@ msgid "Show consumable items" msgstr "Mostrar itens consumíveis" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Tem Preço" @@ -7498,7 +7737,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Montagem" @@ -7508,7 +7747,7 @@ msgid "Show active assemblies" msgstr "Mostrar montagens ativas" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Rastreável" @@ -7602,7 +7841,7 @@ msgid "Show optional lines" msgstr "Mostrar itens opcionais" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8256,7 +8495,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Incluir Subcategorias" @@ -8339,7 +8578,7 @@ msgid "Show templates with choices" msgstr "Mostrar modelos com escolhas" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Possui unidades" @@ -8385,141 +8624,141 @@ msgstr "" msgid "Minimum stock" msgstr "Stock mínimo" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrar por estado ativo da peça" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrar por atributo de montagem" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Incluir peças nas subcategorias" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrar por atributo do componente" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtrar por atributo rastreável" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtrar por peças que têm unidades" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Possui IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtrar por peças que tenham um IPN" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Possui estoque" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Mostrar peças que têm estoque" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtrar po peças que têm estoque baixo" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Adquirível" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtrar por peças que são adquiríveis" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Vendível" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtrar por peças que são vendíveis" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtual" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtrar por peças que são virtuais" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Não é Virtual" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8604,7 +8843,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Selecionar" @@ -8709,19 +8948,19 @@ msgstr "Descrição não está disponível" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Confirmar a ativação da extensão" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Confirmar desativação da extensão" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "A extensão selecionada será ativada" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "A extensão selecionada será desativada" @@ -8734,19 +8973,19 @@ msgstr "A extensão selecionada será desativada" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Desativar" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Ativar" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8754,76 +8993,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Desinstalar" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Ativar Extensão" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Instalar extensão" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Instalar" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "A extensão foi instalada com sucesso." -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Desintalar extensão" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Confirmar instalação da extensão" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "A extensão selecionada será desinstalada." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "A extensão foi desinstalada com sucesso" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "A extensão foi desinstalada com sucesso" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Excluir Extensão" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Ao excluir esta extensão, todas as configurações e informações da extensão serão removidas. Tem a certeza que deseja excluir está extensão?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Extensões recarregadas" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "As Extensões foram recarregadas com sucesso" @@ -8831,7 +9070,7 @@ msgstr "As Extensões foram recarregadas com sucesso" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Recarregar extensões" @@ -8843,11 +9082,11 @@ msgstr "Recarregar extensões" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Instalar Extensão" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Detalhe da Extensão" @@ -8867,11 +9106,11 @@ msgstr "Detalhe da Extensão" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Amostra" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Instalado" diff --git a/src/frontend/src/locales/pt_BR/messages.po b/src/frontend/src/locales/pt_BR/messages.po index cc33c5bdd6..36a9391c71 100644 --- a/src/frontend/src/locales/pt_BR/messages.po +++ b/src/frontend/src/locales/pt_BR/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Parar escaneamento" msgid "Start scanning" msgstr "Começar a escanear" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Código de barras" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Escanear" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Ler Código de Barras" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Isto irá remover o link com o código de barras associado" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Desvincular Código de Barras" @@ -244,13 +246,13 @@ msgstr "Imprimir Relatórios" msgid "Remove this row" msgstr "Remover esta linha" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Estoque Baixo" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Remover imagem associada a este item?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Remover" @@ -574,6 +576,7 @@ msgstr "Remover" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Limpar" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Enviar" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Existem erros para um ou mais campos de formulário" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Atualizar" @@ -880,7 +884,7 @@ msgstr "Atualizar" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Excluir" @@ -898,154 +902,158 @@ msgstr "Excluir" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Acesso bem-sucedido" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Autenticação realizada com sucesso" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Falha ao acessar" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Verifique sua entrada e tente novamente." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Falha ao acessar" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Verifique sua entrada e tente novamente." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Envio de e-mail concluído" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Verifique sua caixa de entrada para o link de acesso. Se você tiver uma conta, você receberá um link de acesso. Também verifique o spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "O envio de endereço eletrônico falhou" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Ou continue com outros métodos" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Nome de usuário" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Seu nome de usuário" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Senha" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Sua senha" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Senha" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Redefinir senha" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Sua senha" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Redefinir senha" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Enviaremos um link para fazer o acesso - se você estiver registrado" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Me envie um e-mail" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Usar nome de usuário e senha" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Entrar" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Enviar E-mail" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Cadastrado com sucesso" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Por favor, confirme seu endereço de e-mail para concluir o registro" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Erro de entrada" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Isto será usado para uma confirmação" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Repetir senha" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Repita a senha" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registrar" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Ou use SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Não possui uma conta?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Voltar ao login" @@ -1058,7 +1066,7 @@ msgstr "Servidor" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Sem classificação" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Buscar..." @@ -1197,13 +1205,13 @@ msgstr "Ícones {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Buscar" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Carregando" @@ -1215,11 +1223,11 @@ msgstr "Nenhum resultado encontrado" msgid "modelRenderer entry required for tables" msgstr "entrada modelo de renderização é necessária para tabelas" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Não há itens disponíveis" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Processando dados" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Ocorreu um erro" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opções" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Ações de código de barras" @@ -1418,10 +1427,6 @@ msgstr "Ações de código de barras" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Configurações de Conta" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Configurações do Sistema" @@ -1791,7 +1796,7 @@ msgstr "Sair" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Peças" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Estoque" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Comprando" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Vendas" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navegação" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Ver todas as notificações" msgid "You have no unread notifications." msgstr "Você não tem notificações não lidas." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultados" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Digite o texto de pesquisa" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opções de pesquisa" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Fornecedores" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Busca por Regex" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Fabricantes" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Pesquisa de palavras inteira" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Clientes" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Digite o texto de pesquisa" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opções de pesquisa" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Busca por Regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Pesquisa de palavras inteira" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Ocorreu um erro durante a pesquisa" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Nenhum Resultado" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Não há resultados disponíveis para a pesquisa" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Data" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Data" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Caminho da Instalação" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Embutido" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Configurações da Extensão" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Configuração de Plugin" @@ -2116,22 +2154,22 @@ msgstr "Modelo desconhecido: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Modelo de Parâmetro de Peça" msgid "Part Parameter Templates" msgstr "Modelos de Parâmetro de Peça" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Modelo de Teste de Peça" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Teste de Modelos de Peças" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Teste de Modelos de Peças" msgid "Supplier Part" msgstr "Fornecedor da Peça" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Peças do Fornecedor" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Fabricante da peça" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Peças do Fabricante" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Categoria da Peça" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Categorias de Peça" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Item de estoque" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Item de estoque" msgid "Stock Items" msgstr "Itens de Estoque" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Localização do estoque" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Locais de estoque" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Categoria de Localização de Estoque" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Categoria de Localização de Estoque" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Histórico de estoque" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Históricos de estoque" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Produzir" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Compilações" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Linha de Produção" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Linhas de Produção" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Criar item" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Criar itens" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Empresa" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Empresas" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Empresas" msgid "Project Code" msgstr "Código do Projeto" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Códigos de Projeto" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Códigos de Projeto" msgid "Purchase Order" msgstr "Pedido de Compra" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Pedidos de compra" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Linha do Pedido de Compra" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Linhas do Pedido de Compra" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Linhas do Pedido de Compra" msgid "Sales Order" msgstr "Pedido de Venda" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Pedidos de vendas" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Envio do Pedido Venda" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Envios do Pedido Venda" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Pedido de Devolução" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Pedidos de Devolução" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Devolver item do pedido" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Devolver item do pedido" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Endereço" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Endereços" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Contato" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Contatos" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Proprietário" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Proprietários" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Proprietários" msgid "User" msgstr "Usuário" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Usuários" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupo" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupos" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Importar Sessão" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Importar Sessões" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Importar Sessão" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Importar Sessões" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Modelo de Etiqueta" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Modelos de Etiqueta" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Modelo de Relatório" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Modelos de Relatório" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Configurações de Plugins" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Categoria de conteúdo" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Categorias de conteúdo" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Categoria de conteúdo" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Categorias de conteúdo" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Remessa" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inativo" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Sem Estoque" @@ -2536,10 +2575,10 @@ msgstr "Número de Série" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Número de Série" msgid "Quantity" msgstr "Quantidade" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Lote" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "Saída da Produção" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Lote" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Lote" msgid "Status" msgstr "Estado" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Concluir Saídas de Produção" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Saídas de produção foram completadas" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Sucatear Saídas de Produção" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Saídas de produção foram sucateadas" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Cancelar Saídas de Produção" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Saídas de produção foram canceladas" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Cancelar Saídas de Produção" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Saídas de produção foram canceladas" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Alocado" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Local de Origem" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Selecione o local de origem para alocação de estoque" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Selecione o local de origem para alocação de estoque" msgid "Allocate Stock" msgstr "Alocar Estoque" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Itens de estoque alocados" @@ -3623,7 +3671,7 @@ msgstr "Itens de estoque alocados" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Inscrito" @@ -3651,31 +3699,31 @@ msgstr "Categoria de peça parental" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Escolher local" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destino do item selecionado" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Localização padrão da categoria de peça selecionada" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Localização do estoque recebida selecionada" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Localização padrão selecionada" @@ -3688,60 +3736,60 @@ msgstr "Localização padrão selecionada" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Definir Localização" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Ajustar Pacotes" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Alterar Status" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Adicionar observação" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Localização" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Armazenar no local padrão" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Armazenar no local padrão" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Armazenar no destino do item de linha" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Armazenar com estoque já recebido" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Armazenar com estoque já recebido" msgid "Batch Code" msgstr "Código de Lote" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Números de Série" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "Data de Validade" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Embalagem" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Anotação" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "Código (SKU)" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "Código (SKU)" msgid "Received" msgstr "Recebido" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Excluir Itens de Linha" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Receber Itens" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Insira o número de série para novo estoque (ou deixe em branco)" msgid "Stock Status" msgstr "Situação do Estoque" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Adicionar Item do Estoque" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Carregando..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Mover para o local padrão" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Mover" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Mover" msgid "In Stock" msgstr "Em Estoque" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Adicionar" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Contar" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Adicionar Estoque" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Remover Estoque" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Transferir Estoque" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Contar Estoque" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Mudar estado do estoque" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Mesclar estoque" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Excluir Item de Estoque" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Local de estoque pai" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Valor" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Desconectado" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Deslogado com sucesso" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Deslogado com sucesso" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Desconectado" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Deslogado com sucesso" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Verifique sua caixa de entrada para o link de redefinição. Isso só funciona se você tiver uma conta. Cheque no spam também." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "A redefinação falhou" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Logado" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Logado com sucesso" @@ -4166,40 +4224,52 @@ msgstr "Tem certeza que deseja remover este item?" msgid "Latest serial number" msgstr "Último número de série" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Sua senha foi alterada com sucesso. Agora você pode acessar usando sua nova senha" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Checando se você já está conectado" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nada selecionado" @@ -4219,8 +4289,8 @@ msgstr "Nada selecionado" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Entrar" @@ -4228,20 +4298,59 @@ msgstr "Entrar" msgid "Logging out" msgstr "Desconectando" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token inválido" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Você precisa fornecer um token válido para definir uma nova senha. Verifique sua caixa de entrada para um link de redefinição." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Senha definida" @@ -4249,6 +4358,14 @@ msgstr "Senha definida" msgid "Set new password" msgstr "Defina uma nova senha" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Defina uma nova senha" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Erro: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "Superusuário" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Contas de Login Único (SSO)" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Não habilitado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Contas de Login Único (SSO) não estão habilitadas neste servidor" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Multifator" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "A autenticação de múltiplos fatores não está configurada para sua conta" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Ficha" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Os seguintes endereços de e-mail estão associados à sua conta:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Principal" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Não Verificado" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Adicionar E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Endereço de e-mail" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Tornar Principal" @@ -4731,46 +4880,143 @@ msgstr "Tornar Principal" msgid "Re-send Verification" msgstr "Reenviar Verificação" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Adicionar E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Endereço de e-mail" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Adicionar E-mail" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "O provedor não foi configurado" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Não configurado" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Não há nenhuma rede social conectada a essa conta." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Você pode entrar na sua conta usando qualquer uma das seguintes contas de terceiros" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Ficha é usada — nenhuma ação" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Revogar" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Nenhuma ficha configurada" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Vencimento" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Visto pela Última Vez" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Ficha" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Raio da borda" msgid "Loader" msgstr "Carregador" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Todas as unidades" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Códigos de barras" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Preços" @@ -5128,19 +5382,19 @@ msgstr "Preços" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiquetas" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Relatórios" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Ordens de Produções" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Emitido por" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Criado" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Detalhes da Produção" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Itens de linha" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Saídas Incompletas" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Estoque Alocado" @@ -5383,131 +5637,131 @@ msgstr "Resultados do teste" msgid "Edit Build Order" msgstr "Editar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Adicionar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Cancelar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Pedido cancelado" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Cancelar este pedido" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Manter Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Colocar este pedido em espera" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Pedido colocado em espera" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Pedido de produção vencido" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Cancelar este pedido" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Problemas com o pedido" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Completar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Marcar este pedido como completo" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Pedido concluído" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Emitir Pedido" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Completar Pedido" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Ações do Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Editar pedido" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Duplicar pedido" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Manter ordem" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Cancelar pedido" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Ondem de Produção" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Página Web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Número de telefone" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Endereço de e-mail" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Moeda Padrão" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Moeda Padrão" msgid "Supplier" msgstr "Fornecedor" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Fabricante" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Fabricante" msgid "Customer" msgstr "Cliente" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Peças Fornecidas" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Peças Fabricadas" @@ -5591,24 +5850,20 @@ msgstr "Peças Fabricadas" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Peças Fornecidas" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Estoque Atribuído" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Editar Empresa" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Excluir Empresa" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Ações da Empresa" @@ -5647,13 +5902,6 @@ msgstr "Detalhes de peça do Fabricante" msgid "Parameters" msgstr "Parâmetros" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Fornecedores" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Detalhes de Peça do Fornecedor" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Estoque Recebido" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Preço do fornecedor" @@ -5882,7 +6130,7 @@ msgstr "Palavras-chave" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Estoque Disponível" @@ -5942,7 +6190,7 @@ msgstr "Em Produção" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Bloqueado" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Parte Virtual" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Fornecedor Padrão" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Faixa de Preço" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Editar Peça" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Adicionar Parte" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Pedir estoque" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Ações da Peça" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Nenhum dado de preço foi encontrado para esta peça." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Resumo de Preços" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Histórico de Compras" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Preço Interno" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Preço LDM" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Preço de Variante" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Preço de Venda" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Histórico de Vendas" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Máximo" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Mínimo" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Valor mínimo" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Valor máximo" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Fabricantes" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Preço Total" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Componente" @@ -6277,13 +6520,13 @@ msgstr "Componente" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Preço Mínimo" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Preço Máximo" @@ -6344,65 +6587,65 @@ msgstr "Quebra de Preço" msgid "Price" msgstr "Preço" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Categoria de Precificação" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Sobrepor Precificação" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Precificação Geral" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Preço de Compra" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Última Atualização" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Preço do fornecedor" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Peça Variante" @@ -6449,13 +6692,13 @@ msgstr "Peça Variante" msgid "Edit Purchase Order" msgstr "Editar Pedido de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Adicionar Ordem de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Referencia do fornecedor" @@ -6465,24 +6708,24 @@ msgstr "Referencia do fornecedor" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Itens de Linha Concluídos" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Destino" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Moeda do pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Custo Total" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Detalhes do pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Itens de linha extra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Emitir Pedido de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Cancelar Pedido de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Reter pedido de compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Concluir Pedido de Compra" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Ações de Pedido" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Editar Pedido de Devolução" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Adicionar Pedido de Devolução" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Emitir Pedido de Devolução" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Cancelar Pedido de Devolução" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Adicionar Pedido de Devolução" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Completar Pedido de Devolução" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Clientes" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Envios Concluídos" @@ -6596,46 +6835,46 @@ msgstr "Envios Concluídos" msgid "Edit Sales Order" msgstr "Editar Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Adicionar Pedido de Vendas" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Envios" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Emitir Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Cancelar Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Adicionar Pedido de Vendas" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Concluir Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Ordem de envio" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filtro" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filtros da Tabela" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Você tem certeza que quer apagar os itens selecionados?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Remover registros selecionados" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Atualizar dados" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Produzindo" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Mostrar itens consumíveis" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Tem Preço" @@ -7497,7 +7736,7 @@ msgstr "A lista de materiais não pode ser editada, pois está bloqueada" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Montagem" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Mostrar montagens ativas" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Rastreável" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "Mostrar linhas opcionais" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Testável" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Incluir Subcategorias" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Mostrar modelos com escolhas" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Possui unidades" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Estoque mínimo" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrar por peça em estado ativo" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filtrar por status de peça bloqueada" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrar por atributo de montagem" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Incluir peças em subcategorias" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrar por atributo do componente" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Filtrar por atributo testável" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtrar por atributo rastreável" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtrar por peças que têm unidades" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Tem IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtrar por partes que tenham um número de peça interna" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Tem estoque" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filtrar por peças que têm estoque" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtrar por peças que tenham estoque baixo" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Comprável" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtrar por peças que são compráveis" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Vendível" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtrar por peças que são vendíveis" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtual" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtrar por peças que são virtuais" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Não é Virtual" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "É um modelo" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Filtrar por partes que são modelos" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "É Revisão" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Filtrar por partes que estão revisões" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Possui revisão" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Filtrar por partes que tenham revisões" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Filtrar por peças que tenham informações de preços" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Filtrar por peças que tenham estoque disponível" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Filtrar por partes em que o usuário está inscrito" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "Tem Estoque" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Filtrar por peças que tenham informações sobre estoques" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "Visualizar parte pai" msgid "Part templates cannot be edited, as the part is locked" msgstr "Modelos de peça não podem ser editados, pois, a peça está bloqueada" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Selecionar" @@ -8708,19 +8947,19 @@ msgstr "Descrição não disponível" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Confirmar ativação do plugin" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Confirmar desativação do plugin" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "A seguinte extensão está desativada" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "A seguinte extensão será desativada" @@ -8733,19 +8972,19 @@ msgstr "A seguinte extensão será desativada" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Desativar" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Ativar" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Desinstalar" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Ativar Plugin" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Instalar plugin" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Instalar" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Plugin instalado com sucesso" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Desinstalar extensões" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Confirmar desinstalação de extensão" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "A extensão selecionada será desinstalada." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Extensão desinstalada com sucesso" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Extensão desinstalada com sucesso" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Deletar extensão" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Excluindo esta configuração de extensão irá remover todas as configurações e dados associados. Tem certeza de que deseja excluir esta extensão?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Plugins recarregados" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Plugins foram recarregados com sucesso" @@ -8830,7 +9069,7 @@ msgstr "Plugins foram recarregados com sucesso" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Recarregar plugins" @@ -8842,11 +9081,11 @@ msgstr "Recarregar plugins" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Instalar Plugin" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Detalhes da extensão" @@ -8866,11 +9105,11 @@ msgstr "Detalhes da extensão" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Amostra" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Instalado" diff --git a/src/frontend/src/locales/ro/messages.po b/src/frontend/src/locales/ro/messages.po index 43be78f7d9..ed4d383cdc 100644 --- a/src/frontend/src/locales/ro/messages.po +++ b/src/frontend/src/locales/ro/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ro\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/ru/messages.po b/src/frontend/src/locales/ru/messages.po index 0d8f5d7bb3..770d3fff65 100644 --- a/src/frontend/src/locales/ru/messages.po +++ b/src/frontend/src/locales/ru/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ru\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Russian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -50,52 +50,54 @@ msgstr "Остановить сканирование" msgid "Start scanning" msgstr "Начать сканирование" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Штрих-код" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Сканировать" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Сканировать штрихкод" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Это удалит ссылку на связанный штрих-ко #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Отвязать штрих-код" @@ -244,13 +246,13 @@ msgstr "Печать отчетов" msgid "Remove this row" msgstr "Удалить эту строку" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "Вы будете перенаправлены на сайт поставщика для дальнейших действий." #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "Этот поставщик не полностью настроен." +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Низкий запас" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Удалить связанное изображение?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Удалить" @@ -574,6 +576,7 @@ msgstr "Удалить" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Очистить" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Подтвердить" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Существуют ошибки для одного или нескольких полей формы" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Обновить" @@ -880,7 +884,7 @@ msgstr "Обновить" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Удалить" @@ -898,154 +902,158 @@ msgstr "Удалить" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Вы вошли" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Вы успешно вошли в систему" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Ошибка входа" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Проверьте введенные данные и повторите попытку." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Ошибка входа" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Проверьте введенные данные и повторите попытку." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Отправка почты прошла успешно" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Проверьте свой почтовый ящик на наличие ссылки для входа в систему. Если у вас есть учетная запись, вы получите ссылку для входа в систему. Проверьте также спам." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Не удалось доставить почту" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Или продолжить с другими методами" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Имя пользователя" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Имя пользователя" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Пароль" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Ваш пароль" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Пароль" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Сбросить пароль" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Ваш пароль" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Сбросить пароль" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Электронная почта" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Мы вышлем вам ссылку для входа - если вы зарегистрированы" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Отправьте мне электронное письмо" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Имя пользователя и пароль" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Войти" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Отправить email" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Регистрация выполнена успешно" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Пожалуйста, подтвердите адрес электронной почты для завершения регистрации" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Ошибка ввода" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Это будет использовано для подтверждения" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Повторите пароль" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Введите пароль еще раз" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Регистрация" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Или используйте SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Нет аккаунта?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Вернуться к логину" @@ -1058,7 +1066,7 @@ msgstr "Узел" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Без категории" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Поиск..." @@ -1197,13 +1205,13 @@ msgstr "{0} иконок" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Поиск" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Загрузка" @@ -1215,11 +1223,11 @@ msgstr "Ничего не найдено" msgid "modelRenderer entry required for tables" msgstr "запись modelRenderer необходима для таблиц" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Нет доступных записей" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "Добавить строку" @@ -1293,6 +1301,7 @@ msgstr "Обработка данных" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Произошла ошибка" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Опции" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Действия со штрихкодом" @@ -1418,10 +1427,6 @@ msgstr "Действия со штрихкодом" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Показать штрихкод" @@ -1745,8 +1750,8 @@ msgstr "Настройки учетной записи" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Системные настройки" @@ -1791,7 +1796,7 @@ msgstr "Выход" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Детали" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Остатки" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Производство" @@ -1824,24 +1829,24 @@ msgstr "Производство" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Покупка" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Продажи" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Панель навигации" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Просмотреть все уведомления" msgid "You have no unread notifications." msgstr "У вас нет непрочитанных уведомлений." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "результаты" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Введите слова для поиска" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Обновить результаты поиска" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Параметры поиска" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Поиск по выражению" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Поиск полного слова" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Введите слова для поиска" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Обновить результаты поиска" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Параметры поиска" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Поиск по выражению" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Поиск полного слова" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Произошла ошибка во время поиска запроса" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Нет доступных результатов для поискового запроса" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Информация о плагине" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Настройки плагинов" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Настройка плагина" @@ -2116,22 +2154,22 @@ msgstr "Неизвестная модель: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Шаблон параметра товара" msgid "Part Parameter Templates" msgstr "Шаблон параметра товаров" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Отгрузка заказов на продажу" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Отгрузка заказов на продажу" msgid "Supplier Part" msgstr "Товар поставщика" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Детали поставщиков" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Товар производителя" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Детали производителей" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Категория детали" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Категории деталей" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "На складе" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "На складе" msgid "Stock Items" msgstr "Складские позиции" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Место хранения" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Места хранения" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Тип склада" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Типы складов" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "История склада" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "История склада" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Сборка" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Производство" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Линия производства" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Линия производства" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Товар производства" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Товары производства" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Компания" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Компании" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Компании" msgid "Project Code" msgstr "Код проекта" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Коды проекта" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Коды проекта" msgid "Purchase Order" msgstr "Заказ на закупку" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Заказы на закупку" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Позиция заказа на поставку" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Позиции заказа на поставку" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Позиции заказа на поставку" msgid "Sales Order" msgstr "Заказ на продажу" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Заказы на продажу" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Отправка заказа на продажу" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Отгрузка заказа на продажу" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Заказ на возврат" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Заказы на возврат" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Позиция заказа на возврат" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Позиции заказа на возврат" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Адрес" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Адреса" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Контакт" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Контакты" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Владелец" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Владельцы" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Владельцы" msgid "User" msgstr "Пользователь" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Пользователи" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Группа" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Группы" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Шаблон этикетки" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Шаблоны этикетки" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Шаблон отчета" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Шаблоны отчётов" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Конфигурации плагина" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Тип контента" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Типы контента" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Тип контента" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Типы контента" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Отгрузка" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Неактивный" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Нет склада" @@ -2536,10 +2575,10 @@ msgstr "Серийный номер" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Серийный номер" msgid "Quantity" msgstr "Количество" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "О проекте InvenTree" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "О проекте InvenTree" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Статус" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Списать Продукцию" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Продукция списана" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Выберите исходное расположение для распределения запасов" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Выберите исходное расположение для рас msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Запасы назначены" @@ -3623,7 +3671,7 @@ msgstr "Запасы назначены" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Родительская категория" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Назначить код партии и серийные номера" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Назначить код партии" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Выберите местоположение" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Пункт назначения товара выбран" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Выбрано расположение категории по умолчанию" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Выбрано место получения запасов" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Выбрано местоположение по умолчанию" @@ -3688,60 +3736,60 @@ msgstr "Выбрано местоположение по умолчанию" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Установить местоположение" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Настройка упаковки" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Изменить статус" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Добавить Заметку" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Расположение" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Расположение магазина по умолчанию" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Расположение магазина по умолчанию" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "Код партии" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Ввести код партии для полученных запасов" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Серийные номера" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Ввести серийные номера для полученных запасов" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Упаковка" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Заметка" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "Артикул" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "Артикул" msgid "Received" msgstr "Получено" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Товар получен на складе" @@ -3854,40 +3906,40 @@ msgstr "Введите серийные номера для нового скл msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Добавить товар на склад" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Выберите часть для установки" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "Подтвердить перемещение запаса" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Загрузка..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Переместить в местоположение по умолчанию" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Переместить" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Переместить" msgid "In Stock" msgstr "В наличии" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Добавить" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Количество" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Добавить Остатки" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Запас добавлен" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Удалить запасы" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Запас удален" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Перемещение запасов" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Запас перемещен" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "Запас перемещен" msgid "Count Stock" msgstr "Подсчет остатков" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Запас посчитан" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Изменить статус запасов" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Состояние запаса изменено" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Объединить Запасы" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Запасы объединены" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Передать запас клиенту" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Запас передан клиенту" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Удалить складскую позицию" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Запас удален" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Расположение основного склада" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Значение" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Выход" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Успешный выход из системы" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Успешный выход из системы" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Выход" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Успешный выход из системы" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Проверьте свой почтовый ящик, чтобы получить ссылку на сброс. Это работает только в том случае, если у вас есть учетная запись. Проверьте также спам." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Сброс не удался" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Войти в систему" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Вход выполнен успешно" @@ -4166,40 +4224,52 @@ msgstr "Вы уверены, что хотите удалить этот эле msgid "Latest serial number" msgstr "Последний серийный номер" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Пароль был установлен успешно. Теперь вы можете войти в систему с новым паролем" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Проверка того, что вы уже вошли в систему" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Ничего не выбрано" @@ -4219,8 +4289,8 @@ msgstr "Ничего не выбрано" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Войти" @@ -4228,20 +4298,59 @@ msgstr "Войти" msgid "Logging out" msgstr "Выход из системы" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Токен недействителен" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Для установки нового пароля необходимо предоставить действующий токен. Проверьте свой почтовый ящик, чтобы получить ссылку на сброс пароля." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Пароль установлен" @@ -4249,6 +4358,14 @@ msgstr "Пароль установлен" msgid "Set new password" msgstr "Установить новый пароль" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Установить новый пароль" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Ошибка: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Учетные записи с единым входом" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Не включен" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Единая регистрация не включена для этого сервера" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Многофакторная аутентификация не настроена для вашей учетной записи" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Токен" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "С вашей учетной записью связаны следующие адреса электронной почты:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Основной" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Проверено" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Непроверенный" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Добавить адрес электронной почты" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "Электронная почта" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Адрес электронной почты" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Сделать основным" @@ -4731,46 +4880,143 @@ msgstr "Сделать основным" msgid "Re-send Verification" msgstr "Отправить подтверждение повторно" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Добавить адрес электронной почты" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "Электронная почта" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Адрес электронной почты" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Добавить Email" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Провайдер не был настроен" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Не настроено" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "К этой учетной записи не подключены аккаунты социальных сетей." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Вы можете войти в свою учетную запись, используя любую из следующих учетных записей третьих лиц" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Токен используется - никаких действий" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Отменить" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Токены не настроены" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Срок действия" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Последнее Посещение" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Токен" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Штрих-коды" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Цены" @@ -5128,19 +5382,19 @@ msgstr "Цены" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Метки" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Отчеты" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Заказы на сборку" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "Internal Part Number" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Создано" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Подробности сборки" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Незавершенная продукция" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "Редактировать заказ на производство" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Создать заказ для производство" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Отменить заказ для производства" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Заказ отменён" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Отменить заказ" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Отложите этот заказ" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Заказ отложен" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Веб-сайт" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "Параметры" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "Ключевые слова" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "В производстве" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Заблокировано" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Ценовой диапазон" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "Запланировано" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Обновить" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Дата создания" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Дата создания" msgid "Completion Date" msgstr "Дата завершения" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Отфильтровать" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Включая подкатегории" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Имеет ед. измерения" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Включить детали в подкатегориях" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Фильтр по деталям, в которых есть ед. измерения" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Виртуальный" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "Описание недоступно" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Удаление этого плагина приведет к удалению всех связанных настроек и данных. Вы уверены, что хотите удалить этот плагин?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/sk/messages.po b/src/frontend/src/locales/sk/messages.po index ffb951d2b5..a57b5a5025 100644 --- a/src/frontend/src/locales/sk/messages.po +++ b/src/frontend/src/locales/sk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/sl/messages.po b/src/frontend/src/locales/sl/messages.po index 4d85df4497..7d84124314 100644 --- a/src/frontend/src/locales/sl/messages.po +++ b/src/frontend/src/locales/sl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "Tiskanje poročil" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/sr/messages.po b/src/frontend/src/locales/sr/messages.po index 78f5556f93..cb8921d3b8 100644 --- a/src/frontend/src/locales/sr/messages.po +++ b/src/frontend/src/locales/sr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" @@ -50,52 +50,54 @@ msgstr "Zaustavi skeniranje" msgid "Start scanning" msgstr "Započni skeniranje" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Barkod" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Skeniraj" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "Unos kamerom" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "Unos skenerom" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "Podaci bar koda" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "Nema podataka bar koda" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "Skeniraj ili unesi podatke bar koda" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "Unesi podatke bar koda" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Skeniraj barkod" @@ -163,7 +165,7 @@ msgstr "Greška pri povezivanju bar koda" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Ovo će ukloniti link sa povezanim barkodom" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Prekini vezu Barkoda" @@ -244,13 +246,13 @@ msgstr "Štampaj izveštaje" msgid "Remove this row" msgstr "Ukloni ovaj red" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "Bićete preusmereni provajderu za dodatne akcije" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "Provajder nije u potpunosti podešen" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "Prikaži broj kategorija koji ste pretplatili" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Niske zalihe" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Ukloniti sliku sa ovog predmeta?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Ukloni" @@ -574,6 +576,7 @@ msgstr "Ukloni" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Obriši" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Podnesi" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Postoje greške na jednom ili više polja na obrascu" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Obnovi" @@ -880,7 +884,7 @@ msgstr "Obnovi" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Obriši" @@ -898,154 +902,158 @@ msgstr "Obriši" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Prijava uspešna" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Uspešno prijavljivanje" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Neuspešna prijava" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Proverite svoj unos i pokušajte ponovno." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Neuspešna prijava" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Proverite svoj unos i pokušajte ponovno." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Isporuka pošte uspešna" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Proverite svoj inbox za link za prijavu. Ako imate račun, dobićete link za prijavu. Proverite i spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Dostava mejla neuspešna" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Ili nastavite sa drugim metodama" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Korisničko ime" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Vaše korisničko ime" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Lozinka" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Vaša lozinka" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Lozinka" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Resetujte lozinku" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Vaša lozinka" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Resetujte lozinku" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-pošta" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Poslaćemo vam link za prijavljivanje - ako ste registrovani korisnik" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Pošalji mi e-poštu" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Koristi korisničko ime i lozinku" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Prijavite se" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Pošalji e-poštu" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registracija uspešna" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Molim Vas da potvrdite vašu email adresu za završetak registracije" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Greška unosa" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Ovo će biti korišćeno za potvrdu" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Ponovite lozinku" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Ponovite lozinku" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registruj" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Ili kostistite SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Da li imate otvoren korisnički nalog?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Vratite se nazad na prijavljivanje" @@ -1058,7 +1066,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Nepoznato" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Pretraži…" @@ -1197,13 +1205,13 @@ msgstr "{0} ikone" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Pretraga" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Učitavanje" @@ -1215,11 +1223,11 @@ msgstr "Nema pronađenih rezultata" msgid "modelRenderer entry required for tables" msgstr "Generator potreban za tabele" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Nema unosa" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "Dodaj novi red" @@ -1293,6 +1301,7 @@ msgstr "Obrađivanje podataka" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Desila se greška" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Opcije" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Akcije Barkoda" @@ -1418,10 +1427,6 @@ msgstr "Akcije Barkoda" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Pregledaj barkod" @@ -1745,8 +1750,8 @@ msgstr "Podešavanje naloga" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Sistemska podešavanja" @@ -1791,7 +1796,7 @@ msgstr "Odjavljivanje" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Delovi" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Zalihe" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "Proizvodnja" @@ -1824,24 +1829,24 @@ msgstr "Proizvodnja" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Kupovina" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Prodaja" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigacija" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Pogledaj sva obaveštenja" msgid "You have no unread notifications." msgstr "Nemate nepročitana obaveštenja" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "Rezultati" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Unesi tekst za pretragu" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "Osveži rezultate pretrage" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Dobavljači" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Opcije pretraživanja" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Proizvođači" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex pretraga" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Pretraga preko cele reči" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Mušterije" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Unesi tekst za pretragu" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "Osveži rezultate pretrage" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Opcije pretraživanja" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex pretraga" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Pretraga preko cele reči" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Desila se greška prilikom pretrage" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Nema rezultata" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Željena pretraga nema rezultata" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "Informacije o ekstenziji" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Datum" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Datum" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Putanja instalacije" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Već ugrađeno" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Podešavanje ekstenzija" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Konfigurisanje ekstenzija" @@ -2116,22 +2154,22 @@ msgstr "Nepoznat model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Šablon parametra dela" msgid "Part Parameter Templates" msgstr "Šabloni parametara dela" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Šablon testiranja dela" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Šabloni testiranja dela" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Šabloni testiranja dela" msgid "Supplier Part" msgstr "Deo nabavljača" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Delovi nabavljača" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Deo proizvođača" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Delovi proizvođača" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Kategorija delova" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Kategorije delova" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Stavka zalihe" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Stavka zalihe" msgid "Stock Items" msgstr "Stavke zaliha" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Lokacija zaliha" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lokacije zaliha" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Tip lokacije zaliha" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Tipovi lokacija zaliha" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Istorija zaliha" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Istorije zaliha" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Izgradnja" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Izgradnje" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Linija izgradnje" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Linije izgradnje" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Stavka izgradnje" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Stavke izgradnje" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Kompanija" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Kompanije" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Kompanije" msgid "Project Code" msgstr "Kod projketa" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Kodovi projekta" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Kodovi projekta" msgid "Purchase Order" msgstr "Narudžbenica" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Narudžbenice" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Linija narudžbenica" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Linije narudžbenica" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Linije narudžbenica" msgid "Sales Order" msgstr "Nalog za prodaju" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Naloti za prodaju" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Pošiljka" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Pošiljke" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Nalog za povrat" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Nalozi za povrat" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Stavka linije naloga za povrat" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Stavke linije naloga za povrat" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adresa" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adrese" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakti" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Vlasnik" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Vlasnici" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Vlasnici" msgid "User" msgstr "Korisnik" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Korisnici" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupa" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupe" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Sekvenca importovanja" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Sekvence importovanja" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Sekvenca importovanja" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Sekvence importovanja" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Šablon za naziv" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Šabloni za nazive" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Šablon za izveštaj" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Šabloni za izveštaje" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Konfiguracije ekstenzije" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Tip sadržaja" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Tipovi sadržaja" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Tip sadržaja" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Tipovi sadržaja" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "Lista selekcije" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "Liste selekcija" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Pošiljka" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Neaktivno" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Nema zalihe" @@ -2536,10 +2575,10 @@ msgstr "Serijski broj" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Serijski broj" msgid "Quantity" msgstr "Količina" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Serija" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "Molimo ispravite greške u izabranim delovima" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "Naruči delove" @@ -3509,7 +3564,7 @@ msgstr "O InvenTree Projektu" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "O InvenTree Projektu" msgid "Build Output" msgstr "Izlazna kompilacija" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Serija" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Serija" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Kompletiraj izlaznu kompilaciju" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Izlazne kompilacije kompletirane" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Izbrišii izlaznu kompilaciju" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Izlazna kompilacija izbriši" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Poništi izlazne kompilacije" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Izlazne kompilacije poništene" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Poništi izlazne kompilacije" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Izlazne kompilacije poništene" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Alocirano" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Lokacija izvora" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Izaberi lokaciju izvora radi alokacije zaliha" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Izaberi lokaciju izvora radi alokacije zaliha" msgid "Allocate Stock" msgstr "Alociraj zalihe" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Stavke zaliha alocirane" @@ -3623,7 +3671,7 @@ msgstr "Stavke zaliha alocirane" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Pretplaćeni" @@ -3651,31 +3699,31 @@ msgstr "Kategorija sa delovima veće kategorije" msgid "Subscribe to notifications for this category" msgstr "Pretplati se za obaveštenja za ovu kategoriju" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "Dodeli kod serije i serijski broj" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Dodeli kod serije" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Izaberi lokaciju" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Destinacije stavke odabrana" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Podrazmevana lokacija kategorije dela izabrana" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Primljena lokacija zaliha selektovana" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Podrazumevana lokacija izabrana" @@ -3688,60 +3736,60 @@ msgstr "Podrazumevana lokacija izabrana" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Podesi lokaciju" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Doradi pakovanje" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Promeni status" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Dodaj belešku" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Lokacija" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Prodavnica na podrazumevanoj lokaciji" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Prodavnica na podrazumevanoj lokaciji" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Destinacija prodavnice linijskih stavki" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Prodavnica sa već primeljenom zalihom" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Prodavnica sa već primeljenom zalihom" msgid "Batch Code" msgstr "Kod serije" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "Unesi kod serije za primljene stavke" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Serijski brojevi" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "Unesi serijske brojeve za primljene stavke" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "Datum isteka" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Pakovanje" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Beleška" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "Jedinica za praćenje zaliha" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "Jedinica za praćenje zaliha" msgid "Received" msgstr "Primljeno" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Primi linijske stavke" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Primi stavke" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Stavka primljena u zalihe" @@ -3854,40 +3906,40 @@ msgstr "Unesi serijske brojeve za novu zalihu (ili ostavi nepopunjeno)" msgid "Stock Status" msgstr "Status zalihe" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Dodaj stavku zalihe" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "Izaberi deo za instalaciju" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "Potvrdi transfer zalihe" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Učitavanje" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Premesti na podrazumevanu lokaciju" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Premesti" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Premesti" msgid "In Stock" msgstr "U zalihama" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Dodaj" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Računaj" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Dodaj zalihu" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Zaliha dodata" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Ukloni zalihu" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Zaliha uklonjena" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Prebaci zalihu" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Zaliha prebačena" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "Zaliha prebačena" msgid "Count Stock" msgstr "Prebroj zalihe" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Zaliha prebrojena" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Promeni status zalihe" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Status zalihe izmenjen" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Spoji zalihe" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Zalihe spojene" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Dodeli zalihu mušteriji" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Zaliha dodeljena mušteriji" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Izbriši stavku zalihe" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Zaliha izbrisana" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Lokacija roditeljske zalihe" @@ -3998,7 +4050,7 @@ msgstr "Unosi" msgid "List of entries to choose from" msgstr "Lista unosa koje možete izabrati" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "Lista unosa koje možete izabrati" msgid "Value" msgstr "Vrednost" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "Naziv" @@ -4061,17 +4113,15 @@ msgstr "Interna serverska greška" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Odjavljen" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Uspešno ste odjavljeni" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Uspešno ste odjavljeni" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Odjavljen" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Uspešno ste odjavljeni" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Proverite u primljenoj pošti da li imate link za resetovanje. Proverite i u spamu" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Resetovanje neuspešno" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Ulogovani ste" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Uspešno ste se ulogovali" @@ -4166,40 +4224,52 @@ msgstr "Da li ste sigurni da želite da izbrišete ovu stavku" msgid "Latest serial number" msgstr "Poslednji serijski broj" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "Lozinku nije bilo moguće promeniti" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "Lozinka promenjena" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Lozinka je uspešno podešena. Sada se možete prijaviti sa novom lozinkom" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "Reset lozinke" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "Nova lozinka" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "Ukucajte svoju novu lozinku" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "Potvrdite novu šifru" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "Potvrdite novu lozinku" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "Potvrdi" @@ -4207,7 +4277,7 @@ msgstr "Potvrdi" msgid "Checking if you are already logged in" msgstr "Proverava se da li ste već prijavljeni" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Nema selekcije" @@ -4219,8 +4289,8 @@ msgstr "Nema selekcije" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Prijavljivanje" @@ -4228,20 +4298,59 @@ msgstr "Prijavljivanje" msgid "Logging out" msgstr "Odjavljivanje" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Neispravan token" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Potrebno je pružiti validan token kako bi ste podesili novu lozinku. Proverite u primljenoj pošti da li imate link za resetovanje" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Lozinka podešena" @@ -4249,6 +4358,14 @@ msgstr "Lozinka podešena" msgid "Set new password" msgstr "Podesi novu lozinku" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Podesi novu lozinku" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Greška: {0}" @@ -4551,10 +4680,6 @@ msgstr "Skenirane stavke" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Pristup osoblja" msgid "Superuser" msgstr "Superkorisnik" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Pojedinačno prijavljivanje na nalog" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Nije omogućeno" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Pojedinačno prijavljivanje nije omogućeno na ovom serveru" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Višestruki faktor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Višestruki faktor autentifikacije nije konfigurisan za vaš nalog" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Sledeća adresa elektronske pošte povezana sa vašim nalogom" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Primarni" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Verifikovan" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Nije verifikovan" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "dodaj adresu elektronske pošte" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E pošta" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Adresa elektronske pošte" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Učini ga primarnim" @@ -4731,46 +4880,143 @@ msgstr "Učini ga primarnim" msgid "Re-send Verification" msgstr "Ponovo pošalji verifikaciju" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "dodaj adresu elektronske pošte" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E pošta" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Adresa elektronske pošte" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Dodaj adresu elektronske pošte" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Provajder nije konfigurisan" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "NIje konfigurisano" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Nema naloga društvenih mreža koji su povezani sa ovim nalogom" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Možete se prijaviti na svoj nalog sa sledećim spoljašnjim nalozima" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Token je iskorišćen - nema akcija" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Opozovi" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Nema konfigurisanih tokena" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Isticanje" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Poslednji put viđen" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Radijus granice" msgid "Loader" msgstr "Učitavač" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Sve merne jedinice" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Barkodovi" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Cene" @@ -5128,19 +5382,19 @@ msgstr "Cene" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Oznake" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Izveštavanje" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Nalozi za izradu" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "Identifikacioni broj dela" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "Prilagođeni status" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Izdat od strane" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Kreirano" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Detalji naloga" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Stavke" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Nepotpuni nalozi" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Alocirano zaliha" @@ -5383,131 +5637,131 @@ msgstr "Rezultati testa" msgid "Edit Build Order" msgstr "Izmeni nalog za izradu" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Dodaj nalog za izradu" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Otkaži nalog za izradu" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Nalog otkazan" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Otkaži ovaj nalog" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Zadrži nalog za izradu" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Stavi ovaj nalog na čekanje" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Nalog stavljen na čekanje" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Izdaj nalog za izradu" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Izdaj ovaj nalog" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Nalog izdat" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Završi nalog za izradu" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Označi ovaj nalog kao završen" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Nalog završen" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Izdaj nalog" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Završi nalog" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Akcije naloga za izradu" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Izmeni nalog" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Dupliraj nalog" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Zadrži nalog" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Otkaži nalog" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Nalog za izradu" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Web sajt" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Broj telefona" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-mail adresa" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Podrazumevana valuta" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Podrazumevana valuta" msgid "Supplier" msgstr "Dobavljač" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Proizvođač" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Proizvođač" msgid "Customer" msgstr "Mušterija" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "Detalji firme" @@ -5583,7 +5838,11 @@ msgstr "Detalji firme" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Dostavljeni delovi" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Proizvedeni delovi" @@ -5591,24 +5850,20 @@ msgstr "Proizvedeni delovi" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Dostavljeni delovi" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Dodeljene zalihe" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Izmeni firmu" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Obriši firmu" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Akcije firme" @@ -5647,13 +5902,6 @@ msgstr "Detalji dela proizvođača" msgid "Parameters" msgstr "Parametri" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Dobavljači" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Detalji dela dobavljača" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Primljene zalihe" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Cene dobavljača" @@ -5882,7 +6130,7 @@ msgstr "Ključne reči" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Dostupne zalihe" @@ -5942,7 +6190,7 @@ msgstr "U produkciji" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Zaključano" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Virtualni deo" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Podrazumevani dobavljač" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Raspon cena" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Izmeni deo" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Dodaj deo" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Naruči zalihe" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Akcije dela" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Nema podataka o cenama za ovaj deo" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Pregled cena" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Istorija kupovine" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Interna cena" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Cena spiska materijala" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Cene varijanti" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Cena prodaje" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Istorija prodaje" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maksimum" @@ -6173,7 +6421,7 @@ msgstr "Raspoređeno" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "Izveštaj o novom popisu zaliha" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimalna vrednost" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maksimalna vrednost" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Proizvođači" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Ukupna cena" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponenta" @@ -6277,13 +6520,13 @@ msgstr "Komponenta" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimalna cena" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maksimalna cena" @@ -6344,65 +6587,65 @@ msgstr "Popust na količinu" msgid "Price" msgstr "Cena" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "Osveži podatke o cenama" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "Podaci o cenama ažurirani" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "Greška pri ažuriranju podataka o cenama" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Izmeni cene" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Kategorija cena" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Zameni cenu" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Ukupna cena" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Cena nabavke" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Poslednji put ažurirano" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "Cena nije postavljena" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "Podaci o cenama nisu izračunati za ovaj deo" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "Akcije cena" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Osvežu" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "Osveži podatke o cenama" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "Izmeni podatke o cenama" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Cena dobavljača" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Varijanta dela" @@ -6449,13 +6692,13 @@ msgstr "Varijanta dela" msgid "Edit Purchase Order" msgstr "Izmeni nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Dodaj nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Referenca dobavljača" @@ -6465,24 +6708,24 @@ msgstr "Referenca dobavljača" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Završene stavke narudžbine" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Odredište" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Valuta narudžbine" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Ukupna cena" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "Datum izdavanja" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "Datum izdavanja" msgid "Completion Date" msgstr "Datum završetka" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Detalji narudžbine" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Dodatne stavke" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Izdaj nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Otkaži nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Zadrži nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Završi nalog za kupovinu" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Akcije narudžbine" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Izmeni reklamaciju" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Dodaj reklamaciju" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Izdaj reklamaciju" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Otkaži reklamaciju" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Zadrži reklamaciju" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Završi reklamaciju" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Mušterije" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Završene isporuke" @@ -6596,46 +6835,46 @@ msgstr "Završene isporuke" msgid "Edit Sales Order" msgstr "Izmeni prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Dodaj prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Isporuke" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Izdaj prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Otkaži prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Zadrži prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "Isporuči nalog za prodaju" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "Isporuči ovaj nalog?" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "Nalog isporučen" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Završi prodajnu narudžbinu" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Naruči pošiljku" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Filteri tabele" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Da li ste sigurni da želite da obrišete ove izabrane stavke?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "Ova akcija se ne može poništiti" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "Prilagođeni filteri tabele su aktivni" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Obriši izabrane zapise" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Osveži podatke" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Izgradnja" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Prikaži potrošne stavke" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Ima cenu" @@ -7497,7 +7736,7 @@ msgstr "Spisak materijala ne može da se menja, deo je zaključan" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Sklop" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Prikaži aktivne sklopove" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Može da se prati" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "Prikaži opcione stavke" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Moguće testirate" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "Pretplaćen si na obaveštenja za ovu kategoriju" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Uključi podkategorije" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Prikaži šablone sa izborima" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Ima merne jedinice" @@ -8384,141 +8623,141 @@ msgstr "Prikaži narudžbenicu" msgid "Minimum stock" msgstr "Minimalne zalihe" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtriraj po statusu aktivnog dela" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filtriraj po statusu zaključavanja dela" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtriraj po atributu sklopa" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Uključi delove u podkategorije" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtriraj po atributu komponente" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Filtriraj po atributu koji može da se testira" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtriraj po atributu za praćenje" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtriraj delove koji imaju merne jedinice" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Ima interni broj dela" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtriraj delove koji imaju interni broj dela" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Ima zalihe" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filtriraj delove koji imaju zalihe" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtriraj delove koji imaju niske zalihe" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Može da se kupi" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtriraj delove koji mogu da se kupe" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Može da se proda" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtriraj delove koji mogu da se prodaju" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtualan" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtriraj delove koji su virtualni" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Nije virtualni" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "Je šablon" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Filtriraj delove koji su šabloni" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "Je revizija" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Filtriraj delove koji su revizije" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Ima revizije" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Filtriraj delove koji imaju revizije" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Filtriraj delove koji imaju informaciju o ceni" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Filtriraj delove koji imaju dostupne zalihe" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Filtriraj delove na koje je korisnik pretplaćen" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "Ima inventar" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Filtriraj delove koji imaju informacije o inventaru" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "Naruči izabrane delove" @@ -8603,7 +8842,7 @@ msgstr "Prikaži nadređeni deo" msgid "Part templates cannot be edited, as the part is locked" msgstr "Šabloni delova ne mogu biti izmenjeni, deo je zaključan" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Izaberi" @@ -8708,19 +8947,19 @@ msgstr "Opis nije dostupan" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Potvrdi aktivaciju dodatka" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Potvrdi deaktivaciju dodatka" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "Izabrani dodatak će biti aktiviran" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "Izabrani dodatak će biti deaktiviran" @@ -8733,19 +8972,19 @@ msgstr "Izabrani dodatak će biti deaktiviran" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Deaktiviraj" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Aktiviraj" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "Aktiviraj izabrani dodatak" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "Ažuriraj izabrane dodatke" @@ -8753,76 +8992,76 @@ msgstr "Ažuriraj izabrane dodatke" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Obriši" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "Obriši izabrani dodatak" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "Obriši izabranu konfiguraciju dodatka" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Aktiviraj dodatak" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "Dodatak je aktiviran" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "Dodatak je deaktiviran" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Instaliraj dodatak" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Instaliraj" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Dodatak uspešno instaliran" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Obriši dodatak" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Potvrdi brisanje dodatka" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "Izabrani dodatak će biti obrisan" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Dodatak uspešno obrisan" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Dodatak uspešno obrisan" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Obriši dodatak" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Brisanjem ove konfiguracije dodatka ukloniće se sva povezana podešavanja i podaci. Da li ste sigurni da želite da obrišete ovaj dodatak?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Dodaci ponovo učitani" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Dodaci uspešno ponovo učitani" @@ -8830,7 +9069,7 @@ msgstr "Dodaci uspešno ponovo učitani" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Ponovo učitaj dodatke" @@ -8842,11 +9081,11 @@ msgstr "Ponovo učitaj dodatke" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Instaliraj dodatak" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Detalji dodatka" @@ -8866,11 +9105,11 @@ msgstr "Detalji dodatka" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Uzorak" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Instalirano" diff --git a/src/frontend/src/locales/sv/messages.po b/src/frontend/src/locales/sv/messages.po index 6d68bd6a7a..1a49b8d4b3 100644 --- a/src/frontend/src/locales/sv/messages.po +++ b/src/frontend/src/locales/sv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Stoppa skanning" msgid "Start scanning" msgstr "Starta skanning" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Streckkod" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Skanna streckkod" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Ta bort länk för streckkod" @@ -244,13 +246,13 @@ msgstr "Skriv ut rapporter" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Få i lager" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Vill du ta bort den associerade bilden från denna artikel?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Ta bort" @@ -574,6 +576,7 @@ msgstr "Ta bort" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Rensa" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Skicka" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Fel finns för ett eller flera formulärfält" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Uppdatera" @@ -880,7 +884,7 @@ msgstr "Uppdatera" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Radera" @@ -898,154 +902,158 @@ msgstr "Radera" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Inlogningen lyckad" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Inloggningen lyckades" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Inloggningen misslyckades" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Kontrollera din inmatning och försök igen." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Inloggningen misslyckades" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Kontrollera din inmatning och försök igen." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "E-postleverans lyckad" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Kolla din inkorg för inloggningslänken. Om du har ett konto kommer du att få en inloggningslänk. Kolla in spam också." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "E-postleverans misslyckades" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Eller fortsätt med andra metoder" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Användarnamn" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Ditt användarnamn" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Lösenord" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Ditt lösenord" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Lösenord" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Återställ lösenord" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Ditt lösenord" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Återställ lösenord" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-post" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Vi skickar en länk till dig för att logga in - om du är registrerad" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Skicka ett e-postmeddelande" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Använd användarnamn och lösenord" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Logga in" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Skicka e-post" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Registreringen lyckades" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Bekräfta din e-postadress för att slutföra registreringen" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Inmatningsfel" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Detta kommer att användas för en bekräftelse" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Upprepa lösenordet" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Upprepa lösenord" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Registrera" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Eller använd SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Har du inget konto?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Tillbaka till inloggning" @@ -1058,7 +1066,7 @@ msgstr "Värd" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Okategoriserade" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Sök..." @@ -1197,13 +1205,13 @@ msgstr "{0} ikoner" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Sök" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Laddar" @@ -1215,11 +1223,11 @@ msgstr "Inga resultat hittades" msgid "modelRenderer entry required for tables" msgstr "modelRenderer post krävs för tabeller" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Inga poster tillgängliga" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Bearbetar data" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Ett fel inträffade" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Alternativ" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Streckkods åtgärder" @@ -1418,10 +1427,6 @@ msgstr "Streckkods åtgärder" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Kontoinställningar" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Systeminställningar" @@ -1791,7 +1796,7 @@ msgstr "Logga ut" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Artiklar" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Lagersaldo" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Inköp" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Försäljning" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Navigering" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "Du har inga olästa aviseringar." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "resultat" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Ange sökord" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Sökalternativ" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex sökning" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Tillverkare" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Hela ordsökningen" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Kunder" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Ange sökord" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Sökalternativ" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex sökning" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Hela ordsökningen" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Ett fel inträffade under sökfrågan" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Inga resultat" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Inga resultat tillgängliga för sökfrågan" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Plugin-konfiguration" @@ -2116,22 +2154,22 @@ msgstr "Okänd modell: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Parametermall för Artiklar" msgid "Part Parameter Templates" msgstr "Parametermallar för Artiklar" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Testmall för artikel" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Testmall för artiklar" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Testmall för artiklar" msgid "Supplier Part" msgstr "Leverantörsartikel" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Leverantörsartikel" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Tillverkarens artiklar" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Tillverkarens artiklar" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Artikel Kategori" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Artikelkategorier" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Lager artikel" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Lager artikel" msgid "Stock Items" msgstr "Artikel i lager" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Lagerplats" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Lagerplats" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Lagerplatstyper" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Lagerplatstyper" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Lagerhistorik" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Lagerhistorik" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Bygg" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Tillverkningar" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Tillverknings rad" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Tillverknings rader" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Tillverknings artikel" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Tillverknings artiklar" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Företag" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Företag" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Företag" msgid "Project Code" msgstr "Projektkod" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Projektkoder" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Projektkoder" msgid "Purchase Order" msgstr "Inköpsorder" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Inköpsorder" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Inköpsorderrad" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Inköpsorderrader" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Inköpsorderrader" msgid "Sales Order" msgstr "Försäljningsorder" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Försäljningsorder" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Försäljningsorder leverans" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Försäljningsorder leveranser" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Returorder" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Returorder" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Rad för returorder" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Rad för returordrar" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adress" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresser" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Kontakter" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Ägare" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Ägare" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Ägare" msgid "User" msgstr "Användare" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Användare" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grupp" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Grupper" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Etikettmall" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Etikettmallar" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Rapportmall" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Rapportmallar" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Plugin-konfigurationer" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Innehållstyp" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Innehållstyper" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Innehållstyp" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Innehållstyper" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Frakt" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Inaktiv" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Inget på lager" @@ -2536,10 +2575,10 @@ msgstr "Serienummer" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Serienummer" msgid "Quantity" msgstr "Antal" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Status" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Slutförd produktion" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Produktion som har slutförts" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Skrota tillverkad produktion" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Tillverkad produktion har skrotats" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Avbryt produktion" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Tillverkade produkter har raderats" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Avbryt produktion" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Tillverkade produkter har raderats" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Överordnad kategori" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "Tilldela streckkod" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Välj plats" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Ändra status" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Lägg till anteckning" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Serienummer" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Sammanfoga lager" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Ta bort lagerartikel" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Överordnad lagerplats" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Värde" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Utloggad" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Utloggningen lyckades" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Utloggningen lyckades" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Utloggad" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Utloggningen lyckades" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Kolla din inkorg för en återställningslänk. Detta fungerar bara om du har ett konto. Kontrollera även i skräppost." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Återställningen misslyckades" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Inloggad" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Inloggning lyckades" @@ -4166,40 +4224,52 @@ msgstr "Är du säker på att du vill ta bort den här posten?" msgid "Latest serial number" msgstr "Senaste serienummer" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Ditt lösenord har sparats. Du kan nu logga in med ditt nya lösenord." -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Kontrollerar om du redan är inloggad" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Inget val" @@ -4219,8 +4289,8 @@ msgstr "Inget val" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Logga in" @@ -4228,20 +4298,59 @@ msgstr "Logga in" msgid "Logging out" msgstr "Loggar ut" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Ogiltig token" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Du måste ange en giltig token för att ange ett nytt lösenord. Kontrollera din inkorg för en återställningslänk." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Lösenord sparat!" @@ -4249,6 +4358,14 @@ msgstr "Lösenord sparat!" msgid "Set new password" msgstr "Ange nytt lösenord" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Ange nytt lösenord" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Fel: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Lägg till e-postadress" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-postadress" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Lägg till e-postadress" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-postadress" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Gränsradie" msgid "Loader" msgstr "Lastare" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Streckkoder" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Prissättning" @@ -5128,19 +5382,19 @@ msgstr "Prissättning" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiketter" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Rapportering" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Byggordrar" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IAN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Utfärdad av" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Skapad" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Tillverknings Detaljer" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Radartiklar" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Ofullständig produktion" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Allokerat lager" @@ -5383,131 +5637,131 @@ msgstr "Test resultat" msgid "Edit Build Order" msgstr "Redigera Tillverknings order" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Lägg till Tillverknings order" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Avbryt Tillverknings order" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Order avbruten" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Avbryt denna order" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Pausa denna order" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Ordern är pausad" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Utfärda tillverknings order" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Utfärda denna order" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Order utfärdad" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Slutför tillverknings order" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Markera denna order som slutförd" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Order slutförd" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Utfärda Order" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Slutför Order" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Åtgärder Tillverknings order" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Redigera order" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Duplicera order" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Pausa order" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Avbryt order" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Webbplats" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Telefonnummer" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-postadress" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Standardvaluta" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Standardvaluta" msgid "Supplier" msgstr "Leverantör" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Tillverkare" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Tillverkare" msgid "Customer" msgstr "Kund" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Leverantörsartiklar" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Tillverkarens artiklar" @@ -5591,24 +5850,20 @@ msgstr "Tillverkarens artiklar" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Leverantörsartiklar" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Tilldelad Lager" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Redigera företag" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Radera företag" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "Parametrar" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Tillgängligt lager" @@ -5942,7 +6190,7 @@ msgstr "Under produktion" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Låst" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Virtuell artikel" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Standardleverantör" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Prisintervall" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Redigera artikel" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Lägg till artikel" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Artikel åtgärder" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Inga prisuppgifter hittades för denna artikel." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Prissättning Översikt" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Köphistorik" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Intern prissättning" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "BOM Priser" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Variant prissättning" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Försäljning Prissättning" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Försäljningshistorik" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Tillverkare" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Totalpris" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponent" @@ -6277,13 +6520,13 @@ msgstr "Komponent" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Slutför returorder" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Kunder" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Slutförda leveranser" @@ -6596,46 +6835,46 @@ msgstr "Slutförda leveranser" msgid "Edit Sales Order" msgstr "Redigera försäljningsorder" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Ny försäljningsorder" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Leveranser" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Avbryt försäljningsorder" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Pausa försäljningsorder" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Slutför försäljningsorder" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Leveransorder" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filter" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Uppdatera data" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Under tillverkning" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Montering" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Spårbart objekt" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Inkludera underkategorier" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Har enheter" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrera på aktiv artiklestatus" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrera efter monteringsattribut" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Inkludera artiklar från underkategorier" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrera efter komponentattribut" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Filtrera på spårbart attribut" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Filtrera efter artiklar som har enheter" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Har IAN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Filtrera efter artiklar som har ett internt artikelnummer" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "I lager" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Filtrera efter artiklar som har enheter" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Filtrera på ariklar som har lågt saldo" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Kan köpas" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Filtrera på artiklar som kan köpas" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Försäljningsbar" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Filtrera på artiklar som kan säljas" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Virtuell" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Filtrera efter artiklar som är virtuella" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Inte virtuell" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "Är mall" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/th/messages.po b/src/frontend/src/locales/th/messages.po index 69efaeca35..cd566fce3c 100644 --- a/src/frontend/src/locales/th/messages.po +++ b/src/frontend/src/locales/th/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: th\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Thai\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "" msgid "Start scanning" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "" @@ -574,6 +576,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "" @@ -880,7 +884,7 @@ msgstr "" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "" @@ -898,154 +902,158 @@ msgstr "" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" msgstr "" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "" @@ -1058,7 +1066,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "" @@ -1197,13 +1205,13 @@ msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "" @@ -1215,11 +1223,11 @@ msgstr "" msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "" @@ -1791,7 +1796,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "" msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -2536,10 +2575,10 @@ msgstr "" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "" msgid "Quantity" msgstr "" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -6277,13 +6520,13 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/tr/messages.po b/src/frontend/src/locales/tr/messages.po index a351786441..323ce1099d 100644 --- a/src/frontend/src/locales/tr/messages.po +++ b/src/frontend/src/locales/tr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: tr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -50,52 +50,54 @@ msgstr "Taramayı durdur" msgid "Start scanning" msgstr "Taramayı başlat" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Barkod" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Barkod Tara" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Bu, ilgili barkoda olan bağlantıyı kaldıracaktır" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Barkodun Bağlantısını Kaldır" @@ -244,13 +246,13 @@ msgstr "Raporlar Yazdır" msgid "Remove this row" msgstr "Bu satırı kaldır" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Düşük Stok" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Bu ögeyle ilişkilendirilmiş resim kaldırılsın mı?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Kaldır" @@ -574,6 +576,7 @@ msgstr "Kaldır" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Temizle" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Gönder" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Bir veya daha fazla form alanında hatalar var" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Güncelle" @@ -880,7 +884,7 @@ msgstr "Güncelle" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Sil" @@ -898,154 +902,158 @@ msgstr "Sil" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Oturum açıldı" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Başarıyla giriş yapıldı" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Giriş başarısız" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Lütfen bilgilerinizi kontrol edin ve yeniden giriş yapın." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Giriş başarısız" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Lütfen bilgilerinizi kontrol edin ve yeniden giriş yapın." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "E-posta teslimi başarılı" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Gelen kutunuzu kontrol edin. Eğer hesabınız varsa giriş yapabilmeniz için bir link alacaksınız. Spam klasörünüzü de kontrol edin." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Posta teslimi başarısız oldu" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Veya başka yöntemlerle devam edin" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Kullanıcı Adı" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Kullanıcı adınız" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Parola" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Parolanız" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Parola" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Parolayı sıfırla" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Parolanız" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Parolayı sıfırla" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "E-posta" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Size giriş yapabilmeniz için bir link göndereceğiz - eğer kayıtlıysanız" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Bize bir eposta gönderin" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Kullanıcı adı ve şifre kullan" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Giriş Yap" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "E-posta Gönder" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Kayıt başarılı" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Kaydı tamamlamak için lütfen e-posta adresinizi doğrulayın" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Hatalı giriş" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Bu bir doğrulama için kullanılacak" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Şifreyi tekrarı" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Şifreyi tekrar girin" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Kaydol" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Veya SSO kullanın" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Bir hesabınız yok mu?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Giriş yapma ekranına geri dön" @@ -1058,7 +1066,7 @@ msgstr "Sunucu" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Sınıflandırılmamış" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Ara..." @@ -1197,13 +1205,13 @@ msgstr "{0} simge" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Ara" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Yükleniyor" @@ -1215,11 +1223,11 @@ msgstr "Hiçbir şey bulunamadı" msgid "modelRenderer entry required for tables" msgstr "Tablolar için gerekli modelRenderer girdisi" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Kullanılabilir girdi yok" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Veri İşleniyor" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Bir hata oluştu" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Barkod Eylemleri" @@ -1418,10 +1427,6 @@ msgstr "Barkod Eylemleri" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "Barkodu Görüntüle" @@ -1745,8 +1750,8 @@ msgstr "Hesap Ayarları" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Sistem Ayarları" @@ -1791,7 +1796,7 @@ msgstr "Çıkış" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Parçalar" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Stok" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Satın Alınıyor" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Satışlar" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Gezinme" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Tüm bildirimleri görüntüle" msgid "You have no unread notifications." msgstr "Okunmamış bildiriminiz yok." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "sonuçlar" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Arama metnini gir" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Arama Seçenekleri" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Sağlayıcılar" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Regex arama" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Üreticiler" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Tam kelime arama" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Müşteriler" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Arama metnini gir" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Arama Seçenekleri" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Regex arama" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Tam kelime arama" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Arama sorgusu sırasında bir hata oluştu" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "Sonuç Yok" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Arama sorgusu için sonuç yok" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Tarih" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Tarih" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "Kurulum Yolu" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Dahili" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Eklenti Ayarları" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Eklenti Yapılandırma" @@ -2116,22 +2154,22 @@ msgstr "Bilinmeyen model: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Parça Parametre Şablonu" msgid "Part Parameter Templates" msgstr "Parça Parametre Şablonları" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Parça Test Şablonu" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Parça Test Şablonları" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Parça Test Şablonları" msgid "Supplier Part" msgstr "Sağlayıcı Parçası" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Tedarikçi Parçaları" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Üretici Parçası" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Üretici Parçaları" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Parça Sınıfı" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Parça Kategorileri" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Stok Ögesi" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Stok Ögesi" msgid "Stock Items" msgstr "Stok Kalemleri" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Stok Konumu" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Stok Konumları" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Stok Konum Türü" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Stok Konum Türleri" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Stok Geçmişi" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Stok Geçmişleri" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Yap" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Yapılar" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Yapı Satırı" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Yapı Satırları" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Yapı Ögesi" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Yapı Ögeleri" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Şirket" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Şirketler" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Şirketler" msgid "Project Code" msgstr "Proje Kodu" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Proje Kodları" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Proje Kodları" msgid "Purchase Order" msgstr "Satın Alma Siparişi" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Satın Alma Emirleri" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Satın Alma Sipariş Satırı" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Satın Alma Sipariş Satırları" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Satın Alma Sipariş Satırları" msgid "Sales Order" msgstr "Satış Siparişi" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Satış Emirleri" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Satış Siparişi Gönderisi" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Satış Siparişi Gönderileri" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "İade Emri" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "İade Emirleri" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "İade Emri Satır Ögesi" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "İade Emri Satır Ögeleri" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Adres" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Adresler" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Bağlantı" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Bağlantılar" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Sahip" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Sahipler" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Sahipler" msgid "User" msgstr "Kullanıcı" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Kullanıcılar" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Grup" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Gruplar" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Oturumu İçe Aktar" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Oturumları İçe Aktar" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Oturumu İçe Aktar" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Oturumları İçe Aktar" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Etiket Şablonu" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Etiket Şablonları" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Rapor Şablonu" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Rapor Şablonları" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Eklenti Yapılandırmaları" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "İçerik Türü" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "İçerik Türleri" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "İçerik Türü" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "İçerik Türleri" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Gönderi" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "İnaktif" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Stok yok" @@ -2536,10 +2575,10 @@ msgstr "Seri Numarası" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Seri Numarası" msgid "Quantity" msgstr "Miktar" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "Parti" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "Yapım Çıktısı" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "Parti" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "Parti" msgid "Status" msgstr "Durum" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Tamamlanan Yapı Çıktıları" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Yapı çıktıları tamamlandı" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Yapı Çıktılarını Hurdaya Ayır" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Yapı çıktıları hurdaya ayrıldı" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Yapı Çıktılarını İptal Et" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Yapı çıktıları iptal edildi" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Yapı Çıktılarını İptal Et" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Yapı çıktıları iptal edildi" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "Ayrıldı" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Kaynak Konum" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "Stoku Ayır" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "Abone olundu" @@ -3651,31 +3699,31 @@ msgstr "Üst parça sınıfı" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Konum Seçiniz" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Öge hedefi seçildi" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Parça sınıfı varsayılan konum seçildi" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Alınan stok konumu seçildi" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Varsayılan konum seçildi" @@ -3688,60 +3736,60 @@ msgstr "Varsayılan konum seçildi" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Konum Ayarla" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Paketlemeyi Ayarla" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Durumu Değiştir" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Note Ekle" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Konum" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Varsayılan konumda depola" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Varsayılan konumda depola" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Satır ögesinin hedefinde depola" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Önceden alınmış bir stok ile depola" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Önceden alınmış bir stok ile depola" msgid "Batch Code" msgstr "Parti Kodu" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Seri Numaraları" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "Son Kullanma Tarihi" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Paketleme" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Not" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Alındı" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Alınan Satır Ögeleri" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Yeni stok için seri numaralarını girin (veya boş bırakın)" msgid "Stock Status" msgstr "Stok Durumu" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Stok Ögesi Ekle" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Yükleniyor..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Varsayılan konuma taşı" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Taşı" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Taşı" msgid "In Stock" msgstr "Stokta" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Ekle" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Say" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Stok Ekle" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "Stok Eklendi" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Stok Kaldır" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "Stok Kaldırıldı" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Stoku Aktar" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "Stok Transfer Edildi" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "Stok Transfer Edildi" msgid "Count Stock" msgstr "Stoku Say" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "Stok Sayıldı" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Stok Durumunu Değiştir" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "Stok Durumu Değişti" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Stoku Birleştir" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "Stok Birleştirildi" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "Stoku Müşteriye Ata" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "Stok Müşteriye Atandı" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Stok Ögelerini Sil" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "Stok Silindi" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Üst stok konumu" @@ -3998,7 +4050,7 @@ msgstr "Girişler" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Değer" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "Etiket" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Çıkış Yapıldı" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Başarıyla çıkış yapıldı" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Başarıyla çıkış yapıldı" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Çıkış Yapıldı" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Başarıyla çıkış yapıldı" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Bir sıfırlama bağlantısı için gelen kutunuzu veya spam kutunuzu yoklayın. Bu yalnızca bir hesabınız varsa çalışacaktır." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Sıfırlama başarısız" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Giriş Yapıldı" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Başarıyla giriş yapıldı" @@ -4166,40 +4224,52 @@ msgstr "Bu ögeyi silmek istediğinize emin misiniz?" msgid "Latest serial number" msgstr "En son seri numarası" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Şifreniz başarıyla değiştirildi. Artık yeni şifrenizle giriş yapabilirsiniz" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Zaten giriş yapıp yapmadığınız kontrol ediliyor" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Seçim yok" @@ -4219,8 +4289,8 @@ msgstr "Seçim yok" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Giriş" @@ -4228,20 +4298,59 @@ msgstr "Giriş" msgid "Logging out" msgstr "Çıkış yapılıyor" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Geçersiz token" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Yeni bir şifre belirlemek için geçerli bir jeton sağlamanız gerekir. Bir sıfırlama bağlantısı için gelen kutunuzu yoklayın." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Şifre belirlendi" @@ -4249,6 +4358,14 @@ msgstr "Şifre belirlendi" msgid "Set new password" msgstr "Yeni şifre belirle" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Yeni şifre belirle" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Hata: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Personel Girişi" msgid "Superuser" msgstr "Süper Kullanıcı" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Tekli Oturum Açma Hesapları" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Etkin değil" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Tekli Oturum Açma bu sunucu için etkinleştirilmemiş" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Çok faktörlü" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Çok faktörlü kimlik doğrulama hesabınız için yapılandırılmamış" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Jeton" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Aşağıdaki e-posta adresleri hesabınızla ilişkilendirilmiştir:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Birincil" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Doğrulandı" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Doğrulanmadı" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "E-posta Adresi Ekle" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "E-posta" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "E-Posta adresi" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Birincil Yap" @@ -4731,46 +4880,143 @@ msgstr "Birincil Yap" msgid "Re-send Verification" msgstr "Doğrulama Kodunu Yeniden Gönder" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "E-posta Adresi Ekle" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "E-posta" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "E-Posta adresi" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "E-posta Ekle" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Sağlayıcı yapılandırılmadı" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Yapılandırılmadı" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Bu hesaba bağlı hiç sosyal ağ hesabı yok." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "İzleyen üçüncü parti hesaplardan birini kullanarak hesabınıza giriş yapabilirsiniz" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Jeton kullanılıyor - eylem yok" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Geri Al" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Hiç jeton yapılandırılmadı" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Bitiş" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Son Görülme" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Jeton" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Kenarlık Yarıçapı" msgid "Loader" msgstr "Yükleyici" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Barkodlar" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Fiyatlandırma" @@ -5128,19 +5382,19 @@ msgstr "Fiyatlandırma" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Etiketler" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Raporlama" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Yapım İşi Emirleri" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "DPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Veren" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Oluşturuldu" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Yapı Ayrıntıları" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Satır Ögeleri" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Tamamlanmayan Çıktılar" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Ayrılan Stok" @@ -5383,131 +5637,131 @@ msgstr "Test Sonuçları" msgid "Edit Build Order" msgstr "Yapı Siparişini Düzenle" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Yapı Siparişi Ekle" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Yapı Siparişini İptal Et" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Sipariş iptal edildi" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Bu siparişi iptal et" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Yapı Siparişini Beklet" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Bu yapı siparişini beklemeye al" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Beklemeye alınan sipariş" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Yapı Siparişi Ver" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Bu siparişi ver" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Sipariş verildi" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Yapı Siparişini Tamamla" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Bu siparişi tamamlandı olarak imle" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Sipariş tamamlandı" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Sipariş Ver" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Siparişi Tamamla" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Yapım Siprişi Eylemleri" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Siparişi düzenle" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Siparişi çoğalt" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Siparişi beklet" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Siparişi iptal et" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Yapım Siparişi" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Web Sitesi" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Telefon Numarası" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "E-posta Adresi" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Varsayılan Para Birimi" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Varsayılan Para Birimi" msgid "Supplier" msgstr "Sağlayıcı" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Üretici" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Üretici" msgid "Customer" msgstr "Müşteri" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Sağlanan Parçalar" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Üretilen Parçalar" @@ -5591,24 +5850,20 @@ msgstr "Üretilen Parçalar" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Sağlanan Parçalar" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Atanan Parçalar" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Şirketi Düzenle" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Şirketi Sil" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Şirket Eylemleri" @@ -5647,13 +5902,6 @@ msgstr "Üretici Parçası Ayrıntıları" msgid "Parameters" msgstr "Parametreler" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Sağlayıcılar" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Sağlayıcı Parça Ayrıntıları" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Alınan Stok" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Sağlayıcı Fiyatlandırması" @@ -5882,7 +6130,7 @@ msgstr "Anahtar Sözcükler" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Mevcut Stok" @@ -5942,7 +6190,7 @@ msgstr "Üretimde" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Kilitli" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Sanal Parça" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Varsayılan Sağlayıcı" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Fiyat Aralığı" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Parçayı Düzenle" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Parça Ekle" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "Stok Sipariş Et" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Parça Eylemleri" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Bu parça için fiyatlandırma verisi bulunamadı." #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Fiyatlandırma Genel Bakış" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Satın Alma Geçmişi" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Dahili Fiyatlandırma" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "ML Fiyatlandırması" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Türev Fiyatlandırması" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Satış Fiyatlandırması" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Satış Geçmişi" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Maksimum" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Minimum" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Minimum Değer" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Maksimum Değer" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Üreticiler" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Toplam Fiyat" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Bileşen" @@ -6277,13 +6520,13 @@ msgstr "Bileşen" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Minimum Fiyat" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Maximum Fiyat" @@ -6344,65 +6587,65 @@ msgstr "Fiyat Aralığı" msgid "Price" msgstr "Fiyat" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "Fiyatlandırmayı Düzenle" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Fiyatlandırma Sınıfı" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Üzerine Yazma Fiyatlandırması" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Genel Fiyatlandırma" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Satın Alma Fiyatlandırması" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Son Güncelle" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "Yenile" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Sağlayıcı Fiyatı" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Türev Parça" @@ -6449,13 +6692,13 @@ msgstr "Türev Parça" msgid "Edit Purchase Order" msgstr "Satın Alma Siparişini Düzenle" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Satın Alma Siparişi Ekle" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Sağlayıcı Referansı" @@ -6465,24 +6708,24 @@ msgstr "Sağlayıcı Referansı" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Tamamlanan Satır Ögeleri" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Hedef" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Sipariş Para Birimi" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Toplam Tutar" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Sipariş Ayrıntıları" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Fazladan Satır Ögeleri" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Satın Alma Siparişi Ver" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Satın Alma Siparişini İptal Et" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Satın Alma Siparişini Beklet" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Satın Alma Siparişini Tamamla" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Sipariş Eylemleri" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "İade Emrini Düzenle" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "İade Emri Ekle" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "İade Emri Ver" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "İade Emrini İptal Et" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "İade Emrini Beklet" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "İade Emrini Tamamla" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Müşteriler" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Tamamlanan Gönderiler" @@ -6596,46 +6835,46 @@ msgstr "Tamamlanan Gönderiler" msgid "Edit Sales Order" msgstr "Satış Siparişlerini Düzenle" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Satış Siparişi Ekle" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Gönderiler" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Satış Siparişi Ver" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Satış Siparişini İptal Et" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Satış Siparişini Beklet" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Satış Siparişini Tamamla" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Siparişi Gönder" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Filtre" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Tablo Süzgeçleri" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Seçilen ögeleri silmek istediğinize emin misiniz?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Seçili kayıtları sil" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Veriyi yenile" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Yapılıyor" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Tüketilebilir ögeleri göster" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Fiyatlandırılmış" @@ -7497,7 +7736,7 @@ msgstr "Parça kilitli olduğundan malzeme listesi düzenlenemez" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Montaj" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Etkin birleştirmeleri göster" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Takip Edilebilir" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "İsteğe bağlı satırları göster" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "Test Edilebilir" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Alt Kategorileri Dahil Et" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "Seçenekli şablonları göster" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Birimi Var" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Minimum stok" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Parçanın aktiflik durumuna göre filtrele" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Parça kilit durumuna göre süz" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Montaj niteliğine göre filtrele" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Alt kategorilerdeki parçaları dahil et" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Bileşen niteliğine göre filtrele" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "Test edilebilir özelliğe göre süz" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Takip edilebilirliğine göre filtrele" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Birimi olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "DPN'si Olanlar" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Dahili parça numarası bulunan parçaları filtrele" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Stoğu Var" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Stoğu olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Düşük stoğu olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Satın Alınabilir" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Satın alınabilir parçaları filtrele" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Satılabilir" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Satılabilir parçaları filtrele" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Sanal" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Sanal parçaları filtrele" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Sanal Değil" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "Şablon Olanlar" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "Şablon olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "Revizyon Olanlar" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "Revizyon olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "Revizyonu Olanlar" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "Revizyonu olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "Fiyatlandırma bilgisi olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "Stokta olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "Kullanıcının abone olduğu parçalara göre süz" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "Stok Sayımı Olanlar" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "Stok sayımı bilgisi olan parçalara göre süz" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "Üst parçayı Görüntüle" msgid "Part templates cannot be edited, as the part is locked" msgstr "Parça kilitli olduğundan parça şablonları düzenlenemez" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "Seç" @@ -8708,19 +8947,19 @@ msgstr "Kullanılabilir açıklama yok" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Eklenti etkinleştirmesini onaylayın" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Eklentinin etkisizleştirilmesini onaylayın" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "Seçilen eklenti etkinleştirilecek" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "Seçilen eklenti etkisizleştirilecek" @@ -8733,19 +8972,19 @@ msgstr "Seçilen eklenti etkisizleştirilecek" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Etkisizleştir" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Etkinleştir" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "Kaldır" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Eklentiyi Etkinleştir" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "Eklenti Kur" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "Kur" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "Eklenti başarıyla yüklendi" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "Eklentiyi Kaldır" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "Eklentiyi kaldırmayı onaylayın" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "Seçilen eklenti kaldırılacak." +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "Eklenti başarıyla yüklendi" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "Eklenti başarıyla yüklendi" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "Eklentiyi Sil" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Bu eklenti yapılandırmasını silmek ilgili tüm ayar ve veriyi de kaldıracaktır. Bu eklentiyi silmek istediğinize emin misiniz?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "Eklentiler yeniden yüklendi" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "Eklentiler başarıyla yeniden yüklendi" @@ -8830,7 +9069,7 @@ msgstr "Eklentiler başarıyla yeniden yüklendi" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "Eklentileri Yeniden Yükle" @@ -8842,11 +9081,11 @@ msgstr "Eklentileri Yeniden Yükle" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "Eklenti Kur" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "Eklenti Ayrıntısı" @@ -8866,11 +9105,11 @@ msgstr "Eklenti Ayrıntısı" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Örnek" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Kuruldu" diff --git a/src/frontend/src/locales/uk/messages.po b/src/frontend/src/locales/uk/messages.po index d12c9d25ea..73990cf163 100644 --- a/src/frontend/src/locales/uk/messages.po +++ b/src/frontend/src/locales/uk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: uk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" @@ -50,52 +50,54 @@ msgstr "Зупинити сканування" msgid "Start scanning" msgstr "Почати сканування" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "Сканувати" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "" @@ -244,13 +246,13 @@ msgstr "Друк звітів" msgid "Remove this row" msgstr "Видалити цей рядок" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Низький залишок" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Видалити пов'язане зображення з цього елемента?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Видалити" @@ -574,6 +576,7 @@ msgstr "Видалити" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Очистити" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Відправити" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Існують деякі помилки для одного або декількох полів" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Оновити" @@ -880,7 +884,7 @@ msgstr "Оновити" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Видалити" @@ -898,154 +902,158 @@ msgstr "Видалити" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Вхід успішний" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Вхід успішно виконано" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Не вдалося увійти" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Перевірте введені дані та повторіть спробу." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Не вдалося увійти" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Перевірте введені дані та повторіть спробу." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Пошту відправлено" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Перевірте вашу поштову скриньку для входу. Якщо у вас є обліковий запис, ви отримаєте посилання для входу. Також перевірте спам." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Пошту не вдалося відправити" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Або продовжити з іншими методами" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Ім'я користувача" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Ваше ім’я користувача" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Пароль" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Ваш пароль" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Пароль" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Скинути пароль" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Ваш пароль" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Скинути пароль" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Електронна пошта" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Ми надішлемо вам авторизаційне посилання - якщо ви зареєстровані" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Надіслати мені ел. листа" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Використати ім'я користувача та пароль" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Увійти" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Надіслати листа" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Реєстрація успішна" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Будь ласка, перевірте свою електронну адресу для завершення реєстрації" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Помилка у вхідних даних" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Це буде використано для підтвердження" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Повтор пароля" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Повторіть пароль" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Реєстрація" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "Або використайте SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Не маєте облікового запису?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Повернутися до входу" @@ -1058,7 +1066,7 @@ msgstr "Хост" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Без категорії" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Пошук..." @@ -1197,13 +1205,13 @@ msgstr "Значки {0}" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Пошук" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Завантаження" @@ -1215,11 +1223,11 @@ msgstr "Результатів не знайдено" msgid "modelRenderer entry required for tables" msgstr "для таблиць, необхідний запис modelRenderer" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Немає записів" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "Параметри" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "" @@ -1418,10 +1427,6 @@ msgstr "" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Налаштування системи" @@ -1791,7 +1796,7 @@ msgstr "Вихід" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Частини" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "В наявності" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "" msgid "You have no unread notifications." msgstr "У вас немає непрочитаних сповіщень." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "результати" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Постачальники" + +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Параметри пошуку" - -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" msgstr "" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Параметри пошуку" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Конфігурація плагіну" @@ -2116,22 +2154,22 @@ msgstr "" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "" msgid "Part Parameter Templates" msgstr "" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "" msgid "Supplier Part" msgstr "Частина від постачальника" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Частини від постачальника" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Категорія" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Категорії" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "" msgid "Stock Items" msgstr "" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "" msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "" msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Адреса" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Адреси" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Контакт" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Контакти" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Власник" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Власники" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Власники" msgid "User" msgstr "Користувач" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Користувачі" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Група" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Групи" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Імпортувати сеанс" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Імпортувати сеанси" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Імпортувати сеанс" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Імпортувати сеанси" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Конфігурації плагінів" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Немає в наявності" @@ -2536,10 +2575,10 @@ msgstr "Серійний номер" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Серійний номер" msgid "Quantity" msgstr "Кількість" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Статус" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "Вибір розташування вихідного товару при розподілі запасів" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "Вибір розташування вихідного товару пр msgid "Allocate Stock" msgstr "" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "Елементи складу виділені" @@ -3623,7 +3671,7 @@ msgstr "Елементи складу виділені" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Оберіть розташування" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "" @@ -3688,60 +3736,60 @@ msgstr "" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "" msgid "Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "" msgid "Received" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "Отримати предмети" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "Елемент, отриманий на складі" @@ -3854,40 +3906,40 @@ msgstr "" msgid "Stock Status" msgstr "" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Завантаження..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Перемістити" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Перемістити" msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Додати" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Кількість" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,18 +4113,16 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." msgstr "" -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" - #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." #~ msgstr "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Перевірте вашу поштову скриньку для скидання посилання. Це працює тільки в тому випадку, якщо у вас є обліковий запис. Перевірити також спам." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "" @@ -4166,40 +4224,52 @@ msgstr "" msgid "Latest serial number" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Пароль успішно встановлено. Тепер ви можете увійти в систему, використовуючи новий пароль" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "" @@ -4219,8 +4289,8 @@ msgstr "" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "" @@ -4228,20 +4298,59 @@ msgstr "" msgid "Logging out" msgstr "" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" -#: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" msgstr "" -#: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Ви повинні вказати коректний токен для встановлення нового пароля. Перевірте вашу поштову скриньку для скидання посилання." +#: src/pages/Auth/ResetPassword.tsx:30 +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" + +#: src/pages/Auth/ResetPassword.tsx:31 +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." + +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "" @@ -4249,6 +4358,14 @@ msgstr "" msgid "Set new password" msgstr "" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "Доступ співробітників" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Для вашого облікового запису не налаштована багатофакторна автентифікація" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Наступні електронні адреси пов'язані з вашим обліковим записом:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "" @@ -4731,46 +4880,143 @@ msgstr "" msgid "Re-send Verification" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Для цього облікового запису соціальних мереж немає підключених до цього профілю." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Ви можете увійти до свого облікового запису, використовуючи будь-який з наступних облікових записів третіх осіб" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "Всі об'єкти" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "" @@ -5128,19 +5382,19 @@ msgstr "" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "" @@ -5383,131 +5637,131 @@ msgstr "" msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "" msgid "Supplier" msgstr "Постачальник" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "" msgid "Customer" msgstr "" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "" @@ -5591,24 +5850,20 @@ msgstr "" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "" @@ -5647,13 +5902,6 @@ msgstr "" msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Постачальники" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "" @@ -5882,7 +6130,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "" @@ -5942,7 +6190,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Типовий постачальник" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Компонент" @@ -6277,13 +6520,13 @@ msgstr "Компонент" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "" @@ -6344,65 +6587,65 @@ msgstr "" msgid "Price" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "" @@ -6449,13 +6692,13 @@ msgstr "" msgid "Edit Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "" @@ -6465,24 +6708,24 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "" @@ -6596,46 +6835,46 @@ msgstr "" msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "" @@ -7497,7 +7736,7 @@ msgstr "Біл матеріалів не можна редагувати, том #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Збірка" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Включити підкатегорії" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Фільтрувати за атрибутом \"Компонент\"" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "Видалення налаштувань цього плагіну призведе до видалення всіх пов'язаних налаштувань та даних. Ви дійсно бажаєте видалити цей плагін?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "" diff --git a/src/frontend/src/locales/vi/messages.po b/src/frontend/src/locales/vi/messages.po index a9f73138d2..eb6967579a 100644 --- a/src/frontend/src/locales/vi/messages.po +++ b/src/frontend/src/locales/vi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "Dừng quét" msgid "Start scanning" msgstr "Bắt đầu quét" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "Mã vạch" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "Quét mã vạch" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "Thao tác này sẽ xóa liên kết đến mã vạch được liên k #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "Gỡ liên kết mã vạch" @@ -244,13 +246,13 @@ msgstr "In báo cáo" msgid "Remove this row" msgstr "" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "Còn ít hàng" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "Xóa hình liên quan khỏi mục này?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "Xoá" @@ -574,6 +576,7 @@ msgstr "Xoá" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "Clear" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "Gửi" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "Lỗi nhập liệu" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "Cập nhật" @@ -880,7 +884,7 @@ msgstr "Cập nhật" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "Xóa" @@ -898,154 +902,158 @@ msgstr "Xóa" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "Đăng nhập thành công" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "Đăng nhập thành công" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "Đăng nhập thất bại" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "Kiểm tra đầu vào của bạn và thử lại." - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "Đăng nhập thất bại" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "Kiểm tra đầu vào của bạn và thử lại." + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "Thư đã được gửi đi thành công" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "Kiểm tra hộp thư để nhận liên kết đăng nhập. Nếu bạn đã có tài khoản, bạn sẽ nhận một liên kết đăng nhập. Kiểm tra đồng thời thư mục spam." -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "Gửi mail thất bại" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "Hoặc tiếp tục với phương thức khác" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "Tên người dùng" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "Tên người dùng của bạn" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "Mật khẩu" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "Mật khẩu của bạn" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "Mật khẩu" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "Đặt lại mật khẩu" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "Mật khẩu của bạn" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "Đặt lại mật khẩu" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "Địa chỉ email" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "Chúng tôi sẽ gửi bạn 1 liên kết để đăng nhập - nếu bạn đã đăng ký" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "Gửi email cho chúng tôi" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "Dùng tên đăng nhập và mật khẩu" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "Đăng nhập" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "Gửi email" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "Đăng kí thành công" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "Vui xác nhận địa chỉ email của bạn để hoàn thành việc đăng ký" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "Lỗi đầu vào" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "Sử dụng cho xác thực" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "Lặp lại mật khẩu" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "Lặp lại mật khẩu" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "Đăng ký" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "hoặc sử dụng SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "Chưa có tài khoản?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "Về trang đăng nhập" @@ -1058,7 +1066,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "Chưa có danh mục" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "Tìm kiếm..." @@ -1197,13 +1205,13 @@ msgstr "{0} icons" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "Tìm kiếm" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "Đang tải" @@ -1215,11 +1223,11 @@ msgstr "Không có kết quả nào được tìm thấy" msgid "modelRenderer entry required for tables" msgstr "modelRenderer mục nhập bắt buộc cho bảng" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "Không mục nhập nào có sẵn" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "Đang xử lý dữ liệu" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "Có lỗi xảy ra" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "Chức năng mã vạch" @@ -1418,10 +1427,6 @@ msgstr "Chức năng mã vạch" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "Cài đặt tài khoản" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "Thiết lập hệ thống" @@ -1791,7 +1796,7 @@ msgstr "Đăng xuất" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "Phụ tùng" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "Kho hàng" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "Mua sắm" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "Bán hàng" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "Điều hướng" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "Xem tất cả thông báo" msgid "You have no unread notifications." msgstr "Bạn chưa có thông báo mới." -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "kết quả" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "Nhập văn bản tìm kiếm" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "Tùy chọn tìm kiếm" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "Nhà cung cấp" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "Tìm kiếm regex" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "Nhà sản xuất" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "Tìm phù hợp toàn bộ từ" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "Khách hàng" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "Nhập văn bản tìm kiếm" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "Tùy chọn tìm kiếm" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "Tìm kiếm regex" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "Tìm phù hợp toàn bộ từ" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "Lỗi trong quá trình truy vấn tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "Không có kết quả nào được tìm thấy với truy vấn tìm kiếm" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "Ngày" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "Ngày" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "Gắn liền" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "Thiết lập phần bổ sung" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "Cấu hình plugin" @@ -2116,22 +2154,22 @@ msgstr "Model không rõ: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "Mẫu tham số phụ kiện" msgid "Part Parameter Templates" msgstr "Mẫu tham số phụ kiện" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "Mẫu thử nghiệm" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "Mẫu thử nghiệm" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "Mẫu thử nghiệm" msgid "Supplier Part" msgstr "Phụ kiện nhà cung cấp" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "Nhà cung cấp phụ kiện" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "Phụ kiện nhà sản xuất" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "Nhà sản xuất phụ kiện" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "Danh mục phụ kiện" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "Danh mục phụ kiện" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "Hàng trong kho" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "Hàng trong kho" msgid "Stock Items" msgstr "Hàng trong kho" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "Vị trí kho hàng" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "Vị trí kho hàng" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "Phân loại vị trí kho hàng" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "Phân loại vị trí kho hàng" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "Lịch sử kho hàng" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "Lịch sử kho hàng" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "Xây dựng" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "Bản dựng" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "Xây dựng line mặt hàng" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "Xây dựng line mặt hàng" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "Xây dựng mặt hàng" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "Xây dựng mặt hàng" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "Công ty" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "Doanh nghiệp" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "Doanh nghiệp" msgid "Project Code" msgstr "Mã dự án" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "Mã dự án" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "Mã dự án" msgid "Purchase Order" msgstr "Đơn đặt mua" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "Đơn hàng mua" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "Các dòng đơn đặt hàng" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "Các dòng đơn đặt hàng" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "Các dòng đơn đặt hàng" msgid "Sales Order" msgstr "Đơn đặt bán" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "Đơn hàng bán" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "Vận chuyển đơn hàng" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "Vận chuyển đơn hàng" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "Địa chỉ" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "Địa chỉ" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "Liên hệ" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "Danh bạ" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "Chủ sở hữu" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "Chủ sở hữu" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "Chủ sở hữu" msgid "User" msgstr "Người dùng" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "Người dùng" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "Nhóm" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "Nhóm" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "Phiên làm việc" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "Nhập phiên làm việc" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "Phiên làm việc" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "Nhập phiên làm việc" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "Mẫu nhãn tem" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "Mẫu nhãn tem" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "Mẫu báo cáo" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "Mẫu báo cáo" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "Cấu hình plugin" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "Loại Nội Dung" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "Loại Nội Dung" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "Loại Nội Dung" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "Loại Nội Dung" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "Lô hàng" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "Không hoạt động" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "Hết hàng" @@ -2536,10 +2575,10 @@ msgstr "Số sê-ri" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "Số sê-ri" msgid "Quantity" msgstr "Số lượng" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "" msgid "Status" msgstr "Trạng thái" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "Hoàn thành xây dựng đầu ra" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "Xây dựng đầu ra đã hoàn thành" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "Loại bỏ xây dựng đầu ra" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "Xây dựng đầu ra đã bị hủy bỏ" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "Loại bỏ xây dựng đầu ra" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "Xây dựng đầu ra đã bị hủy" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "Loại bỏ xây dựng đầu ra" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "Xây dựng đầu ra đã bị hủy" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "Vị trí nguồn cung" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "" msgid "Allocate Stock" msgstr "Phân kho" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "" @@ -3623,7 +3671,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "" @@ -3651,31 +3699,31 @@ msgstr "Danh mục phụ kiện cha" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "Chọn vị trí" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "Đã chọn đích đến của mặt hàng" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "Vị trí mặc định danh mục đã được chọn" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "Vị trí kho hàng nhận đã được chọn" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "Vị trí mặc định đã chọn" @@ -3688,60 +3736,60 @@ msgstr "Vị trí mặc định đã chọn" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "Cài đặt vị trí" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "Điều chỉnh bao bì" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "Thay đổi trạng thái" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "Thêm ghi chú" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "Vị trí" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "Cửa hàng ở vị trí mặc định" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "Cửa hàng ở vị trí mặc định" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "Cửa hàng tại điểm đến của mặt hàng" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "Cửa hàng đã nhận hàng" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "Cửa hàng đã nhận hàng" msgid "Batch Code" msgstr "Mã lô hàng" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "Số sê-ri" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "Đóng gói" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "Ghi chú" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "SKU" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "SKU" msgid "Received" msgstr "Đã nhận" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "Nhận hạng mục" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "" @@ -3854,40 +3906,40 @@ msgstr "Điền số sê-ri cho kho mới (hoặc để trống)" msgid "Stock Status" msgstr "Trạng thái kho" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "Thêm mặt hàng trong kho" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "Đang tải..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "Đến vị trí mặc định" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "Di chuyển" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "Di chuyển" msgid "In Stock" msgstr "Còn hàng" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "Thêm" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "Đếm" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "Thêm kho" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "Xoá kho" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "Chuyển kho" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "Kiểm kê" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "Đổi trạng thái kho" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "Gộp kho" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "Xóa mặt hàng trong kho" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "Vị trí kho lớn" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "Giá trị" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "Đã đăng xuất" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "Đăng xuất thành công" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "Đăng xuất thành công" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "Đã đăng xuất" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "Đăng xuất thành công" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Kiểm tra hộp thư để lấy liên kết đặt lại. Việc này chỉ có tác dụng khi bạn có tài khoản. Cần kiểm tra thư mục Spam/Junk." -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "Thiết lập lại thất bại" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "Đã đăng nhập" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "Đăng nhập thành công." @@ -4166,40 +4224,52 @@ msgstr "Bạn có chắc chắn muốn xóa đối tượng này?" msgid "Latest serial number" msgstr "Số seri mới nhất" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "Mật khẩu đã được đặt mới thành công. Bạn có thể đăng nhập bằng mật khẩu mới" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "Đang kiểm tra trạng thái đăng nhập của bạn" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "Không có lựa chọn" @@ -4219,8 +4289,8 @@ msgstr "Không có lựa chọn" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "Đăng nhập" @@ -4228,20 +4298,59 @@ msgstr "Đăng nhập" msgid "Logging out" msgstr "Đang đăng xuất" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "Token không hợp lệ" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "Bạn cần cung cấp chữ ký số hợp lệ để đặt mật khẩu mới. Kiểm tra hộp thư của bạn để lấy 1 liên kết tạo lại." +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "Đã đặt mật khẩu" @@ -4249,6 +4358,14 @@ msgstr "Đã đặt mật khẩu" msgid "Set new password" msgstr "Đặt mật khẩu mới" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "Đặt mật khẩu mới" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "Lỗi: {0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "" msgid "Superuser" msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "Tài khoản đăng nhập một lần" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "Không kích hoạt" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "Máy chủ này chưa bật chức năng đăng nhập một lần" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "Đa nhân tố" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "Chưa cấu hình xác thực đa nhân tố cho tài khoản của bạn" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "Token" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "Địa chỉ email sau đã được liên kết với tài khoản của bạn:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "Chính" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "Đã xác minh" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "Chưa xác minh" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "Thêm địa chỉ email" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "Email" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "Địa chỉ Email" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "Chọn mặc định" @@ -4731,46 +4880,143 @@ msgstr "Chọn mặc định" msgid "Re-send Verification" msgstr "Gửi lại xác minh" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "Thêm địa chỉ email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "Email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "Địa chỉ Email" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "Thêm email" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "Nhà cung cấp chưa được cấu hình" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "Chưa được cấu hình" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "Không có tài khoản mạng xã hội nào được kết nối đến tài khoản này." +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "Bạn có thể đăng nhập vào tài khoản của bạn bằng cách sử dụng bất kỳ tài khoản bên thứ ba" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "Mã thông báo được sử dụng - không có thay đổi" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "Thu hồi" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "Chưa được cấu hình" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "Hết hạn" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "Xem lần cuối" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "Token" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "Bo viền" msgid "Loader" msgstr "Thanh tải" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "Mã vạch" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "Giá bán" @@ -5128,19 +5382,19 @@ msgstr "Giá bán" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "Nhãn" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "Báo cáo" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "Đơn đặt bản dựng" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "Cấp bởi" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "Đã tạo" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "Chi tiết bản dựng" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "Dòng hàng hóa" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "Đầu ra chưa hoàn hiện" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "Kho hàng đã phân bổ" @@ -5383,131 +5637,131 @@ msgstr "Kết quả kiểm tra" msgid "Edit Build Order" msgstr "Sửa đơn đặt bản dựng" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "Tạo đơn đặt bản dựng" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "Hủy đơn đặt bản dựng" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "Đã huỷ giao dịch" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "Hủy đơn hàng này" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "Chuyển trạng thái chờ đơn đặt bản dựng" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "Chuyển đơn hàng sang trạng thái chờ" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "Đơn hàng đã chuyển sang chờ" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "Xác nhận" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "Xác nhận" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "Đã xác nhận" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "Hoàn thành" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "Đánh dấu hoàn thành" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "Hoàn thành" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "Xác nhận" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "Hoàn thành" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "Thao tác đơn đặt bản dựng" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "Chỉnh sửa đơn hàng" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "Nhân bản đơn hàng" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "Giữ đơn hàng" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "Hủy đơn hàng" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "Xây dựng đơn hàng" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "Trang web" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "Số điện thoại" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "Địa chỉ email" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "Tiền tệ mặc định" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "Tiền tệ mặc định" msgid "Supplier" msgstr "Nhà cung cấp" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "Nhà sản xuất" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "Nhà sản xuất" msgid "Customer" msgstr "Khách hàng" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "Nguyên liệu nhà cung cấp" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "Nguyên liệu nhà sản xuất" @@ -5591,24 +5850,20 @@ msgstr "Nguyên liệu nhà sản xuất" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "Nguyên liệu nhà cung cấp" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "Kho đã được giao" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "Sửa doanh nghiệp" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "Xóa doanh nghiệp" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "Chức năng doanh nghiệp" @@ -5647,13 +5902,6 @@ msgstr "Chi tiết nguyên liệu" msgid "Parameters" msgstr "Thông số" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "Nhà cung cấp" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "Chi tiết" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "Kho đã nhận hàng" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "Giá nhà cung cấp" @@ -5882,7 +6130,7 @@ msgstr "Từ khóa" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "Số hàng tồn" @@ -5942,7 +6190,7 @@ msgstr "Đang sản xuất" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "Khóa" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "Nguyên liệu ảo" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "Nhà cung ứng mặc định" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Khoảng giá" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "Sửa phụ kiện" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "Thêm nguyên liệu" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "Thao tác" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "Không tồn tại giá cho nguyên liệu này" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "Tóm lược định giá" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "Lịch sử mua hàng" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "Định giá nội bộ" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "Giá BOM" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "Biến thể giá" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "Giá sale" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "Lịch sử sale" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "Tối đa" @@ -6173,7 +6421,7 @@ msgstr "" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "Tối thiểu" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "Giá trị tối thiểu" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "Giá trị tối đa" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "Nhà sản xuất" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "Tổng tiền" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Thành phần" @@ -6277,13 +6520,13 @@ msgstr "Thành phần" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "Giá thấp nhất" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "Giá cao nhất" @@ -6344,65 +6587,65 @@ msgstr "Giảm giá" msgid "Price" msgstr "Giá" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "Danh mục giá" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "Ghi đè giá" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "Giá tổng thể" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "Giá mua" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "Cập nhật lần cuối" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "Giá nhà cung cấp" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "Biến thể nguyên liệu" @@ -6449,13 +6692,13 @@ msgstr "Biến thể nguyên liệu" msgid "Edit Purchase Order" msgstr "Sửa đơn mua" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "Thêm đơn mua" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "Tham chiếu nhà cung cấp" @@ -6465,24 +6708,24 @@ msgstr "Tham chiếu nhà cung cấp" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "Những mục hoàn thành" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "Đích đến" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "Tiền tệ đơn hàng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "Tổng chi phí" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "Chi tiết đơn đặt" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "Thêm dòng mở rộng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "Xác nhận đơn hàng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "Huỷ đơn hàng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "Tạm hoãn đơn hàng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "Hoàn thành đơn hàng" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "Chức năng đơn đặt" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "Sửa đơn hoàn" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "Thêm đơn hoàn" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "Xác nhận đơn hoàn" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "Huỷ đơn hoàn" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "Tạm hoãn đơn hoàn" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "Hoàn thành đơn hoàn" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "Khách hàng" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "Vận đơn đã hoàn thành" @@ -6596,46 +6835,46 @@ msgstr "Vận đơn đã hoàn thành" msgid "Edit Sales Order" msgstr "Sửa đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "Thêm đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "Vận chuyển" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "Xác nhận đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "Huỷ đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "Tạm hoãn đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "Hoàn thành đơn hàng sale" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "Thứ tự vận đơn" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "Bộ lọc" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "Bộ lọc bảng" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "Bạn muốn xóa các mục đã chọn?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "Xóa bản ghi được chọn" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "Làm mới dữ liệu" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "Đang dựng" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "Hiện items tiêu hao" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "Có định giá" @@ -7497,7 +7736,7 @@ msgstr "Không thể sửa BOM, do nguyên liệu bị khoá" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "Lắp ráp" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "Hiện dây chuyền đang hoạt động" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Có thể theo dõi" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Bao gồm danh mục con" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "Có đơn vị" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "Kho tối thiểu" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Lọc theo trạng thái mở phụ kiện" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Lọc theo thuộc tính lắp ráp" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Bao gồm phụ kiên trong danh mục con" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Lọc theo thuộc tính thành phần" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "Lọc theo thuộc tính có thể theo dõi" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "Lọc theo phụ kiện có chứa đơn vị" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "Có IPN" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "Lọc theo sản phẩm có số sản phẩm nội bộ" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "Có kho" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "Lọc theo sản phẩm có trong kho" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "Lọc theo sản phẩm có ít hàng" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "Có thể mua" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "Lọc theo sản phẩm có thể mua" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "Có thể bán" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "Lọc theo sản phẩm có thể bán" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "Ảo" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "Lọc theo sản phẩm ảo" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "Không ảo" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "" msgid "Part templates cannot be edited, as the part is locked" msgstr "" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "" @@ -8708,19 +8947,19 @@ msgstr "Mô tả không có sẵn" #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "Xác nhận kích hoạt phần bổ sung" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "Xác nhận tắt phần bổ sung" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "" @@ -8733,19 +8972,19 @@ msgstr "" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "Hủy kích hoạt" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "Kích hoạt" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "" @@ -8753,76 +8992,76 @@ msgstr "" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "Kích hoạt phần bổ sung" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "" @@ -8830,7 +9069,7 @@ msgstr "" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "" @@ -8842,11 +9081,11 @@ msgstr "" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "" @@ -8866,11 +9105,11 @@ msgstr "" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "Mẫu" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "Đã cài đặt" diff --git a/src/frontend/src/locales/zh_Hans/messages.po b/src/frontend/src/locales/zh_Hans/messages.po index 9a83eea14d..d9a5e1a879 100644 --- a/src/frontend/src/locales/zh_Hans/messages.po +++ b/src/frontend/src/locales/zh_Hans/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "停止扫描" msgid "Start scanning" msgstr "开始扫描" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "条形码" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "扫描" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "扫描条形码" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "这将删除关联条形码的链接" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "解绑条形码" @@ -244,13 +246,13 @@ msgstr "列印報告" msgid "Remove this row" msgstr "移除此行" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "显示订阅的零件类别数量" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "低库存" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "删除与此项关联的图片?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "移除" @@ -574,6 +576,7 @@ msgstr "移除" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "清除" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "提交" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "一个或多个表单字段存在错误" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "更新" @@ -880,7 +884,7 @@ msgstr "更新" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "删除" @@ -898,154 +902,158 @@ msgstr "删除" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "登录成功" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "登录成功" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "登录失败" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "请检查您的输入并重试。" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "登录失败" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "请检查您的输入并重试。" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "邮件发送成功" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "请检查您的收件箱以查看登录链接。如果您有账户,您将收到登录链接。如未收到,请检查邮箱垃圾箱。" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "邮件发送失败" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "或继续使用其他方法" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "用户名" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "你的用户名" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "密码" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "您的密码" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "密码" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "重置密码" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "您的密码" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "重置密码" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "邮箱" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "我们将向您发送登录链接 - 如果您已注册" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "给我发一封电子邮件" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "使用用户名和密码" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "登录" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "发送电子邮件" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "注册成功" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "请确认您的电子邮件地址以完成注册" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "输入错误" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "此将用于确认" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "密码重复" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "再次输入密码" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "注册" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "或使用 SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "没有帐户?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "返回登录界面" @@ -1058,7 +1066,7 @@ msgstr "主机" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "未分类" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "搜索..." @@ -1197,13 +1205,13 @@ msgstr "{0} 个图标" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "搜索" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "正在加载" @@ -1215,11 +1223,11 @@ msgstr "未找到结果" msgid "modelRenderer entry required for tables" msgstr "表格需要 modelRenderer 条目" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "无可用条目" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "处理数据中" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "发生错误" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "选项" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "条形码操作" @@ -1418,10 +1427,6 @@ msgstr "条形码操作" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "账户设置" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "系统设置" @@ -1791,7 +1796,7 @@ msgstr "登出" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "零件" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "库存" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "采购中" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "销售" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "导航栏" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "查看全部通知" msgid "You have no unread notifications." msgstr "您没有未读通知" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "结果" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "输入搜索文本" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" +msgstr "" -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" -msgstr "刷新搜索结果" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "供应商" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "搜索选项" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "制造商" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "正则表达式搜索" - -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "全词搜索" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "客户" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "输入搜索文本" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "刷新搜索结果" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "搜索选项" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "正则表达式搜索" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "全词搜索" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "搜索查询时发生错误" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "无结果" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "没有可供搜索查询的结果" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "插件信息" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "日期" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "日期" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "安装路径" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "内置" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "插件设置" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "插件配置" @@ -2116,22 +2154,22 @@ msgstr "未知模型: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "零件参数模板" msgid "Part Parameter Templates" msgstr "零件参数模板" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "零件测试模板" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "零件测试模板" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "零件测试模板" msgid "Supplier Part" msgstr "供应商零件" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "供应商零件" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "制造商零件" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "制造商零件" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "零件类别" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "零件类别" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "库存项" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "库存项" msgid "Stock Items" msgstr "库存项" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "库存地点" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "库存地点" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "库存地点类型" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "库存地点类型" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "库存历史记录" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "库存历史记录" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "生产..." -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "编译" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "生产行" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "生产行" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "构建项目:" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "构建多个项目" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "公司" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "公司" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "公司" msgid "Project Code" msgstr "项目编码" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "项目编码" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "项目编码" msgid "Purchase Order" msgstr "采购订单" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "采购订单" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "采购订单行" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "采购订单行" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "采购订单行" msgid "Sales Order" msgstr "销售订单" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "销售订单" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "销售订单配送" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "销售订单配送" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "退货订单" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "退货订单" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "退货订单行项目" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "退货订单行项目" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "地址" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "地址" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "联系人" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "联系人" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "所有者" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "所有者" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "所有者" msgid "User" msgstr "用户" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "用户" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "群组" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "群组" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "导入会话" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "导入会话" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "导入会话" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "导入会话" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "标签模板" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "标签模板" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "报告模板" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "报告模板" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "插件配置" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "内容类型" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "内容类型" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "内容类型" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "内容类型" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "配送" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "未激活" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "无库存" @@ -2536,10 +2575,10 @@ msgstr "序列号" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "序列号" msgid "Quantity" msgstr "数量" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "批次" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "生产产出" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "批次" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "批次" msgid "Status" msgstr "状态" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "完成生产输出" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "生产已完成" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "报废生产输出" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "生产已完成" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "取消生产输出" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "生产已完成" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "取消生产输出" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "生产已完成" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "已分配" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "来源地点" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "选择分配库存的源位置" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "选择分配库存的源位置" msgid "Allocate Stock" msgstr "分配库存" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "分配的库存项目" @@ -3623,7 +3671,7 @@ msgstr "分配的库存项目" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "已订阅" @@ -3651,31 +3699,31 @@ msgstr "上级零件类别" msgid "Subscribe to notifications for this category" msgstr "订阅此类别的通知" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "选择位置" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "已选择项目目的地" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "已选择零件类别默认位置" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "已选择接收库存位置" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "已选择默认位置" @@ -3688,60 +3736,60 @@ msgstr "已选择默认位置" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "设置位置" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "调整封包" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "更改状态" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "添加备注" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "位置" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "存储在默认位置" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "存储在默认位置" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "存储在行项目目标" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "存储已收到的库存" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "存储已收到的库存" msgid "Batch Code" msgstr "批号" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "序列号" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "有效期至" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "包装" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "备注" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "库存单位 (SKU)" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "库存单位 (SKU)" msgid "Received" msgstr "已接收" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "接收行项目" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "接收物品" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "已收到库存物品" @@ -3854,40 +3906,40 @@ msgstr "输入新库存的序列号(或留空)" msgid "Stock Status" msgstr "库存状态" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "编辑库存项" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "选择要安装的零件" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "正在加载..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "移动到默认位置" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "移动" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "移动" msgid "In Stock" msgstr "入库" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "添加" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "总计" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "添加库存" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "移除库存" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "转移库存" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "库存数量" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "更改库存状态" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "合并库存" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "删除库存项" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "上级库存地点" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "值" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "已登出" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "已成功登出" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "已成功登出" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "已登出" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "已成功登出" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "查看收件箱中的重置链接。这只有在您有账户的情况下才会起作用。也请检查垃圾邮件。" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "重置失败" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "已登录" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "已成功登入" @@ -4166,40 +4224,52 @@ msgstr "确实要删除此项目吗?" msgid "Latest serial number" msgstr "最新序列号" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "密码设置成功。您现在可以使用新密码登录" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "检查您是否已经登录" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "未选择" @@ -4219,8 +4289,8 @@ msgstr "未选择" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "登录" @@ -4228,20 +4298,59 @@ msgstr "登录" msgid "Logging out" msgstr "正在登出" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "令牌无效" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "您需要提供一个有效的令牌来设置一个新的密码。请检查收件箱以获取重置链接。" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "密码已设置" @@ -4249,6 +4358,14 @@ msgstr "密码已设置" msgid "Set new password" msgstr "设置新密码" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "设置新密码" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "错误:{0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "工作人员访问" msgid "Superuser" msgstr "超级用户" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "单点登录账户" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "未启用" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "此服务器未启用单点登录" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "多因素身份验证" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "您的账户未配置多因素身份验证" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "令牌" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "以下电子邮件地址与您的账户相关联:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "主要的" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "已验证" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "未验证" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "添加电子邮件地址" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "邮箱" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "邮箱地址" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "设为首选" @@ -4731,46 +4880,143 @@ msgstr "设为首选" msgid "Re-send Verification" msgstr "重新发送验证" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "添加电子邮件地址" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "邮箱" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "邮箱地址" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "添加电子邮件" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "未配置提供商" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "未配置" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "您当前没有连接到此账户的社交网络账户。" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "您可以使用下列任何第三方账户登录您的账户" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "令牌已被使用 - 没有动作" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "撤销" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "未配置令牌" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "到期" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "上一次查看时间" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "令牌" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "边框半径" msgid "Loader" msgstr "加载器" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "所有单位" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "条形码" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "定价" @@ -5128,19 +5382,19 @@ msgstr "定价" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "标签" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "报告" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "生产订单" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "内部零件编码 IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "发布人" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "已创建" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "生产详情" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "行项目" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "未出产" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "已分配的库存" @@ -5383,131 +5637,131 @@ msgstr "测试结果" msgid "Edit Build Order" msgstr "编辑生产订单" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "添加生产订单" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "取消生产订单" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "订单已取消" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "取消此订单" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "挂起生产订单" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "将此订单挂起" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "挂起订单" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "发出生产订单" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "发出这个订单" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "订单发起" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "完成生产订单" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "标记该订单为已完成" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "订单已完成" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "发布订单" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "完成订单" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "生产订单操作" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "编辑订单" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "复制订单" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "挂起订单" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "取消订单" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "生产订单" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "网站" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "电话号码" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "电子邮件地址" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "默认货币单位" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "默认货币单位" msgid "Supplier" msgstr "供应商" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "制造商" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "制造商" msgid "Customer" msgstr "客户" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "公司详细信息" @@ -5583,7 +5838,11 @@ msgstr "公司详细信息" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "已提供的零件" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "制成零件" @@ -5591,24 +5850,20 @@ msgstr "制成零件" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "已提供的零件" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "已分配的库存" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "编辑公司" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "删除该公司" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "公司操作" @@ -5647,13 +5902,6 @@ msgstr "制造商零件详情" msgid "Parameters" msgstr "参数" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "供应商" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "供应商零件详情" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "接收库存" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "供应商价格" @@ -5882,7 +6130,7 @@ msgstr "关键词" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "可用库存" @@ -5942,7 +6190,7 @@ msgstr "生产中" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "已锁定" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "虚拟零件" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "默认供应商" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "价格范围" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "编辑零件" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "添加零件" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "订单库存" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "零件选项" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "未找到此零件的定价数据" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "定价概览" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "采购记录" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "内部价格" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "物料清单价格" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "变体价格" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "销售价格" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "销售记录" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "最大值" @@ -6173,7 +6421,7 @@ msgstr "排定" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "最小值" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "盘点报告" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "最小值" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "最大值" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "制造商" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "总价" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "组件" @@ -6277,13 +6520,13 @@ msgstr "组件" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "最低价格" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "最高价格" @@ -6344,65 +6587,65 @@ msgstr "批发价" msgid "Price" msgstr "价格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "刷新定价数据" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "更新定价数据" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "更新定价数据失败" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "编辑价格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "价格类别" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "覆盖价格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "总价" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "采购价格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "最近更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "定价未设置" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "此部分尚未计算定价数据" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "定价操作" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "刷新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "刷新定价数据" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "编辑定价数据" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "供应商价格" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "变体零件" @@ -6449,13 +6692,13 @@ msgstr "变体零件" msgid "Edit Purchase Order" msgstr "编辑采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "添加采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "供应商参考" @@ -6465,24 +6708,24 @@ msgstr "供应商参考" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "已完成行项目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "目的地" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "订单货币" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "总成本" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "订单细节" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "额外行项目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "发布采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "取消采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "挂起采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "完成采购订单" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "订单操作" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "编辑退货订单" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "添加退货订单" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "发布退货订单" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "取消退货订单" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "挂起退货订单" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "完成退货订单" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "客户" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "完成配送" @@ -6596,46 +6835,46 @@ msgstr "完成配送" msgid "Edit Sales Order" msgstr "编辑销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "添加销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "配送" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "发布销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "取消销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "挂起销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "完成销售订单" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "装货单" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "过滤器" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "表格筛选" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "确定要删除所选的项目吗?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "该操作无法撤销" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "删除选中的记录" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "刷新数据" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "正在生产" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "显示可消耗项目" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "是否有价格" @@ -7497,7 +7736,7 @@ msgstr "无法编辑材料清单,因为零件已锁定" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "装配" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "显示活动装配体" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "可追踪" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "显示可选项目" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "可测试" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "您已订阅此类别的通知" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "包含子类别" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "显示有选项的模板" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "有单位" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "最低库存数" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "按零件活动状态筛选" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "按零件锁定状态筛选" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "按装配属性筛选" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "包括子类别中的零件" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "按组件属性筛选" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "按可跟踪属性筛选" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "按可跟踪属性筛选" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "按拥有单位的零件筛选" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "有内部零件编码" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "按具有内部零件编号的零件筛选" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "有库存" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "按有库存的零件筛选" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "按库存少的零件筛选" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "可购买" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "按可购买的零件筛选" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "可销售" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "按可出售的零件筛选" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "虚拟" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "按虚拟零件筛选" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "非虚拟的" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "是模板" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "按模板部分筛选零件" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "是否修订" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "按修订零件筛选" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "有修订" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "按有修订的零件筛选" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "按有定价信息的零件筛选" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "按有可用库存的零件筛选" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "按用户订阅的零件筛选" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "有盘点" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "按有盘点信息的零件筛选" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "查看父部分" msgid "Part templates cannot be edited, as the part is locked" msgstr "模板参数无法编辑,因为组件已锁定" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "选择" @@ -8708,19 +8947,19 @@ msgstr "描述不可用." #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "确认插件激活" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "确认插件停用" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "所选插件将被激活" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "所选插件将被停用" @@ -8733,19 +8972,19 @@ msgstr "所选插件将被停用" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "停用" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "激活" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "激活所选插件" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "更新所选插件" @@ -8753,76 +8992,76 @@ msgstr "更新所选插件" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "卸载" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "卸载所选插件" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "删除选中的插件配置" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "激活插件" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "安装插件" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "安装" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "插件安装成功" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "卸载插件" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "确认插件卸载" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "所选插件将被卸载。" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "插件卸载成功" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "插件卸载成功" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "刪除插件" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "删除此插件配置将删除所有相关的设置和数据。您确定要删除此插件吗?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "插件已重载" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "插件重载成功" @@ -8830,7 +9069,7 @@ msgstr "插件重载成功" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "重载插件" @@ -8842,11 +9081,11 @@ msgstr "重载插件" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "安装插件" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "插件详情" @@ -8866,11 +9105,11 @@ msgstr "插件详情" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "样本" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "已安装" diff --git a/src/frontend/src/locales/zh_Hant/messages.po b/src/frontend/src/locales/zh_Hant/messages.po index fa40e6838c..7d0349e41f 100644 --- a/src/frontend/src/locales/zh_Hant/messages.po +++ b/src/frontend/src/locales/zh_Hant/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2025-02-14 08:19\n" +"PO-Revision-Date: 2025-02-23 05:35\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -50,52 +50,54 @@ msgstr "停止掃描" msgid "Start scanning" msgstr "開始掃描" -#: src/components/barcodes/BarcodeInput.tsx:33 +#: src/components/barcodes/BarcodeInput.tsx:34 #: src/tables/general/BarcodeScanTable.tsx:55 #: src/tables/settings/BarcodeScanHistoryTable.tsx:64 msgid "Barcode" msgstr "條碼" -#: src/components/barcodes/BarcodeInput.tsx:34 +#: src/components/barcodes/BarcodeInput.tsx:35 #: src/components/barcodes/BarcodeKeyboardInput.tsx:9 #: src/defaults/actions.tsx:69 msgid "Scan" msgstr "掃描" -#: src/components/barcodes/BarcodeInput.tsx:50 +#: src/components/barcodes/BarcodeInput.tsx:53 msgid "Camera Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:59 +#: src/components/barcodes/BarcodeInput.tsx:63 msgid "Scanner Input" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:101 +#: src/components/barcodes/BarcodeInput.tsx:105 msgid "Barcode Data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:105 +#: src/components/barcodes/BarcodeInput.tsx:109 msgid "No barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:106 +#: src/components/barcodes/BarcodeInput.tsx:110 msgid "Scan or enter barcode data" msgstr "" -#: src/components/barcodes/BarcodeInput.tsx:110 +#: src/components/barcodes/BarcodeInput.tsx:114 #: src/components/buttons/PrintingActions.tsx:120 #: src/components/buttons/PrintingActions.tsx:158 #: src/components/editors/NotesEditor.tsx:74 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:149 -#: src/components/forms/fields/ApiFormField.tsx:338 +#: src/components/forms/fields/ApiFormField.tsx:351 #: src/components/forms/fields/TableField.tsx:44 #: src/components/importer/ImportDataSelector.tsx:188 #: src/components/importer/ImporterColumnSelector.tsx:216 #: src/components/modals/LicenseModal.tsx:87 -#: src/components/nav/SearchDrawer.tsx:463 -#: src/components/render/ModelType.tsx:283 -#: src/pages/Auth/ChangePassword.tsx:50 +#: src/components/nav/SearchDrawer.tsx:553 +#: src/components/render/ModelType.tsx:273 +#: src/pages/Auth/ChangePassword.tsx:55 #: src/pages/ErrorPage.tsx:11 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:124 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:632 #: src/pages/part/PartPricingPanel.tsx:71 #: src/states/IconState.tsx:46 #: src/states/IconState.tsx:76 @@ -111,8 +113,8 @@ msgstr "" #: src/components/barcodes/BarcodeScanDialog.tsx:32 #: src/components/nav/NavigationDrawer.tsx:117 -#: src/forms/PurchaseOrderForms.tsx:413 -#: src/forms/PurchaseOrderForms.tsx:517 +#: src/forms/PurchaseOrderForms.tsx:416 +#: src/forms/PurchaseOrderForms.tsx:520 msgid "Scan Barcode" msgstr "掃描條碼" @@ -163,7 +165,7 @@ msgstr "" #: src/components/barcodes/QRCode.tsx:178 #: src/pages/part/PartDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:199 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:205 #: src/pages/sales/ReturnOrderDetail.tsx:169 #: src/pages/sales/SalesOrderDetail.tsx:181 #: src/pages/sales/SalesOrderShipmentDetail.tsx:169 @@ -176,7 +178,7 @@ msgstr "這將刪除關聯條碼的鏈接" #: src/components/barcodes/QRCode.tsx:204 #: src/components/items/ActionDropdown.tsx:183 -#: src/forms/PurchaseOrderForms.tsx:508 +#: src/forms/PurchaseOrderForms.tsx:511 msgid "Unlink Barcode" msgstr "解綁條碼" @@ -244,13 +246,13 @@ msgstr "列印報告" msgid "Remove this row" msgstr "移除此行" -#: src/components/buttons/SSOButton.tsx:43 +#: src/components/buttons/SSOButton.tsx:38 msgid "You will be redirected to the provider for further actions." msgstr "" #: src/components/buttons/SSOButton.tsx:44 -msgid "This provider is not full set up." -msgstr "" +#~ msgid "This provider is not full set up." +#~ msgstr "This provider is not full set up." #: src/components/buttons/SSOButton.tsx:54 #~ msgid "Sign in redirect failed." @@ -361,7 +363,7 @@ msgstr "" #: src/components/dashboard/DashboardWidgetLibrary.tsx:38 #: src/pages/part/PartSchedulingDetail.tsx:306 -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:238 msgid "Low Stock" msgstr "低庫存" @@ -561,9 +563,9 @@ msgid "Remove the associated image from this item?" msgstr "刪除與此項關聯的圖片?" #: src/components/details/DetailsImage.tsx:82 -#: src/forms/StockForms.tsx:737 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:199 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:306 +#: src/forms/StockForms.tsx:747 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:201 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 #: src/pages/stock/StockDetail.tsx:727 msgid "Remove" msgstr "移除" @@ -574,6 +576,7 @@ msgstr "移除" #: src/components/items/ActionDropdown.tsx:269 #: src/contexts/ThemeContext.tsx:47 #: src/hooks/UseForm.tsx:40 +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:105 #: src/tables/FilterSelectDrawer.tsx:303 #: src/tables/RowActions.tsx:85 #: src/tables/build/BuildOutputTable.tsx:441 @@ -608,6 +611,7 @@ msgstr "清除" #: src/components/details/DetailsImage.tsx:255 #: src/components/forms/ApiForm.tsx:675 #: src/contexts/ThemeContext.tsx:47 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:643 msgid "Submit" msgstr "提交" @@ -871,7 +875,7 @@ msgid "Errors exist for one or more form fields" msgstr "一個或多個表單字段存在錯誤" #: src/components/forms/ApiForm.tsx:713 -#: src/tables/plugin/PluginListTable.tsx:196 +#: src/tables/plugin/PluginListTable.tsx:194 msgid "Update" msgstr "更新" @@ -880,7 +884,7 @@ msgstr "更新" #: src/hooks/UseForm.tsx:121 #: src/pages/Notifications.tsx:130 #: src/tables/RowActions.tsx:75 -#: src/tables/plugin/PluginListTable.tsx:233 +#: src/tables/plugin/PluginListTable.tsx:231 msgid "Delete" msgstr "刪除" @@ -898,154 +902,158 @@ msgstr "刪除" #~ msgid "Login successfull" #~ msgstr "Login successfull" -#: src/components/forms/AuthenticationForm.tsx:54 +#: src/components/forms/AuthenticationForm.tsx:64 msgid "Login successful" msgstr "登錄成功" -#: src/components/forms/AuthenticationForm.tsx:55 +#: src/components/forms/AuthenticationForm.tsx:65 msgid "Logged in successfully" msgstr "登錄成功" -#: src/components/forms/AuthenticationForm.tsx:60 -#: src/components/forms/AuthenticationForm.tsx:68 -msgid "Login failed" -msgstr "登錄失敗" - -#: src/components/forms/AuthenticationForm.tsx:61 -#: src/components/forms/AuthenticationForm.tsx:69 -#: src/components/forms/AuthenticationForm.tsx:85 -#: src/components/forms/AuthenticationForm.tsx:222 -#: src/functions/auth.tsx:178 -msgid "Check your input and try again." -msgstr "請檢查您的輸入並重試。" - #: src/components/forms/AuthenticationForm.tsx:65 #: src/functions/auth.tsx:74 #~ msgid "Mail delivery successfull" #~ msgstr "Mail delivery successfull" -#: src/components/forms/AuthenticationForm.tsx:79 -#: src/functions/auth.tsx:169 +#: src/components/forms/AuthenticationForm.tsx:72 +#: src/components/forms/AuthenticationForm.tsx:80 +msgid "Login failed" +msgstr "登錄失敗" + +#: src/components/forms/AuthenticationForm.tsx:73 +#: src/components/forms/AuthenticationForm.tsx:81 +#: src/components/forms/AuthenticationForm.tsx:97 +#: src/components/forms/AuthenticationForm.tsx:263 +#: src/functions/auth.tsx:200 +msgid "Check your input and try again." +msgstr "請檢查您的輸入並重試。" + +#: src/components/forms/AuthenticationForm.tsx:91 +#: src/functions/auth.tsx:191 msgid "Mail delivery successful" msgstr "郵件發送成功" -#: src/components/forms/AuthenticationForm.tsx:80 +#: src/components/forms/AuthenticationForm.tsx:92 msgid "Check your inbox for the login link. If you have an account, you will receive a login link. Check in spam too." msgstr "請檢查您的收件箱以查看登錄鏈接。如果您有賬户,您將收到登錄鏈接。如未收到,請檢查郵箱垃圾箱。" -#: src/components/forms/AuthenticationForm.tsx:84 +#: src/components/forms/AuthenticationForm.tsx:96 msgid "Mail delivery failed" msgstr "郵件發送失敗" -#: src/components/forms/AuthenticationForm.tsx:104 +#: src/components/forms/AuthenticationForm.tsx:116 msgid "Or continue with other methods" msgstr "或繼續使用其他方法" -#: src/components/forms/AuthenticationForm.tsx:115 -#: src/components/forms/AuthenticationForm.tsx:238 +#: src/components/forms/AuthenticationForm.tsx:127 +#: src/components/forms/AuthenticationForm.tsx:278 +#: src/pages/Auth/ChangePassword.tsx:118 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:71 msgid "Username" msgstr "使用者帳號" -#: src/components/forms/AuthenticationForm.tsx:117 -#: src/components/forms/AuthenticationForm.tsx:240 +#: src/components/forms/AuthenticationForm.tsx:129 +#: src/components/forms/AuthenticationForm.tsx:280 msgid "Your username" msgstr "你的用户名" -#: src/components/forms/AuthenticationForm.tsx:122 -#: src/components/forms/AuthenticationForm.tsx:253 -#: src/pages/Auth/ResetPassword.tsx:101 -msgid "Password" -msgstr "密碼" - -#: src/components/forms/AuthenticationForm.tsx:124 -#: src/components/forms/AuthenticationForm.tsx:255 -msgid "Your password" -msgstr "您的密碼" - #: src/components/forms/AuthenticationForm.tsx:131 #~ msgid "Log in" #~ msgstr "Log in" +#: src/components/forms/AuthenticationForm.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:293 +#: src/pages/Auth/ResetPassword.tsx:101 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:697 +msgid "Password" +msgstr "密碼" + #: src/components/forms/AuthenticationForm.tsx:136 -#: src/pages/Auth/Reset.tsx:26 -msgid "Reset password" -msgstr "重置密碼" +#: src/components/forms/AuthenticationForm.tsx:295 +msgid "Your password" +msgstr "您的密碼" #: src/components/forms/AuthenticationForm.tsx:136 #~ msgid "I will use username and password" #~ msgstr "I will use username and password" -#: src/components/forms/AuthenticationForm.tsx:145 -#: src/components/forms/AuthenticationForm.tsx:245 +#: src/components/forms/AuthenticationForm.tsx:148 +#: src/pages/Auth/Reset.tsx:26 +msgid "Reset password" +msgstr "重置密碼" + +#: src/components/forms/AuthenticationForm.tsx:157 +#: src/components/forms/AuthenticationForm.tsx:285 #: src/pages/Auth/Reset.tsx:31 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:51 msgid "Email" msgstr "郵箱" -#: src/components/forms/AuthenticationForm.tsx:146 +#: src/components/forms/AuthenticationForm.tsx:158 #: src/pages/Auth/Reset.tsx:32 -#: src/pages/Auth/ResetPassword.tsx:102 msgid "We will send you a link to login - if you are registered" msgstr "我們將向您發送登錄鏈接 - 如果您已註冊" -#: src/components/forms/AuthenticationForm.tsx:162 +#: src/components/forms/AuthenticationForm.tsx:174 msgid "Send me an email" msgstr "給我發一封電子郵件" -#: src/components/forms/AuthenticationForm.tsx:164 +#: src/components/forms/AuthenticationForm.tsx:176 msgid "Use username and password" msgstr "使用用户名和密碼" -#: src/components/forms/AuthenticationForm.tsx:173 +#: src/components/forms/AuthenticationForm.tsx:185 +#: src/pages/Auth/MFALogin.tsx:54 msgid "Log In" msgstr "登錄" -#: src/components/forms/AuthenticationForm.tsx:175 +#: src/components/forms/AuthenticationForm.tsx:187 #: src/pages/Auth/Reset.tsx:41 -#: src/pages/Auth/ResetPassword.tsx:107 msgid "Send Email" msgstr "發送電子郵件" -#: src/components/forms/AuthenticationForm.tsx:204 +#: src/components/forms/AuthenticationForm.tsx:221 +msgid "Passwords do not match" +msgstr "" + +#: src/components/forms/AuthenticationForm.tsx:238 msgid "Registration successful" msgstr "註冊成功" -#: src/components/forms/AuthenticationForm.tsx:205 +#: src/components/forms/AuthenticationForm.tsx:239 msgid "Please confirm your email address to complete the registration" msgstr "請確認您的電子郵件地址以完成註冊" -#: src/components/forms/AuthenticationForm.tsx:221 +#: src/components/forms/AuthenticationForm.tsx:262 msgid "Input error" msgstr "輸入錯誤" -#: src/components/forms/AuthenticationForm.tsx:247 +#: src/components/forms/AuthenticationForm.tsx:287 msgid "This will be used for a confirmation" msgstr "此將用於確認" -#: src/components/forms/AuthenticationForm.tsx:260 +#: src/components/forms/AuthenticationForm.tsx:300 msgid "Password repeat" msgstr "密碼重複" -#: src/components/forms/AuthenticationForm.tsx:262 +#: src/components/forms/AuthenticationForm.tsx:302 msgid "Repeat password" msgstr "再次輸入密碼" -#: src/components/forms/AuthenticationForm.tsx:274 -#: src/components/forms/AuthenticationForm.tsx:319 -#: src/pages/Auth/Login.tsx:134 +#: src/components/forms/AuthenticationForm.tsx:314 +#: src/components/forms/AuthenticationForm.tsx:359 +#: src/pages/Auth/Login.tsx:126 msgid "Register" msgstr "註冊" -#: src/components/forms/AuthenticationForm.tsx:280 +#: src/components/forms/AuthenticationForm.tsx:320 msgid "Or use SSO" msgstr "或使用 SSO" -#: src/components/forms/AuthenticationForm.tsx:311 +#: src/components/forms/AuthenticationForm.tsx:351 msgid "Don't have an account?" msgstr "沒有帳户?" -#: src/components/forms/AuthenticationForm.tsx:330 +#: src/components/forms/AuthenticationForm.tsx:370 msgid "Go back to login" msgstr "返回登錄界面" @@ -1058,7 +1066,7 @@ msgstr "主機" #: src/components/forms/HostOptionsForm.tsx:70 #: src/components/forms/InstanceOptions.tsx:118 #: src/components/plugins/PluginDrawer.tsx:68 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:410 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:782 #: src/pages/Index/Settings/AdminCenter/UnitManagementPanel.tsx:19 #: src/pages/part/CategoryDetail.tsx:86 #: src/pages/part/PartDetail.tsx:164 @@ -1179,7 +1187,7 @@ msgstr "未分類" #: src/components/forms/fields/IconField.tsx:209 #: src/components/nav/Layout.tsx:77 -#: src/tables/part/PartThumbTable.tsx:193 +#: src/tables/part/PartThumbTable.tsx:200 msgid "Search..." msgstr "搜索..." @@ -1197,13 +1205,13 @@ msgstr "{0} 個圖標" #: src/components/forms/fields/RelatedModelField.tsx:320 #: src/pages/Index/Settings/UserSettings.tsx:66 -#: src/tables/Search.tsx:23 +#: src/tables/Search.tsx:27 msgid "Search" msgstr "搜尋" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:78 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:326 msgid "Loading" msgstr "正在加載" @@ -1215,11 +1223,11 @@ msgstr "找不到結果" msgid "modelRenderer entry required for tables" msgstr "表格需要 modelRenderer 條目" -#: src/components/forms/fields/TableField.tsx:180 +#: src/components/forms/fields/TableField.tsx:186 msgid "No entries available" msgstr "無可用條目" -#: src/components/forms/fields/TableField.tsx:191 +#: src/components/forms/fields/TableField.tsx:197 msgid "Add new row" msgstr "" @@ -1293,6 +1301,7 @@ msgstr "處理數據中" #: src/components/importer/ImporterColumnSelector.tsx:185 #: src/components/items/ErrorItem.tsx:12 #: src/functions/api.tsx:57 +#: src/functions/auth.tsx:234 msgid "An error occurred" msgstr "發生錯誤" @@ -1409,8 +1418,8 @@ msgid "Options" msgstr "選項" #: src/components/items/ActionDropdown.tsx:162 -#: src/tables/InvenTreeTableHeader.tsx:159 -#: src/tables/InvenTreeTableHeader.tsx:160 +#: src/tables/InvenTreeTableHeader.tsx:170 +#: src/tables/InvenTreeTableHeader.tsx:171 msgid "Barcode Actions" msgstr "條碼操作" @@ -1418,10 +1427,6 @@ msgstr "條碼操作" #~ msgid "Link custom barcode" #~ msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:166 -#~ msgid "View" -#~ msgstr "View" - #: src/components/items/ActionDropdown.tsx:167 msgid "View Barcode" msgstr "" @@ -1745,8 +1750,8 @@ msgstr "賬户設置" #: src/components/nav/MainMenu.tsx:67 #: src/components/nav/NavigationDrawer.tsx:141 #: src/components/nav/SettingsHeader.tsx:41 -#: src/pages/Index/Settings/SystemSettings.tsx:306 -#: src/pages/Index/Settings/SystemSettings.tsx:311 +#: src/pages/Index/Settings/SystemSettings.tsx:308 +#: src/pages/Index/Settings/SystemSettings.tsx:313 msgid "System Settings" msgstr "系統設置" @@ -1791,7 +1796,7 @@ msgstr "登出" #: src/components/nav/NavigationDrawer.tsx:77 #: src/components/render/ModelType.tsx:30 #: src/defaults/links.tsx:12 -#: src/pages/Index/Settings/SystemSettings.tsx:171 +#: src/pages/Index/Settings/SystemSettings.tsx:173 #: src/pages/part/CategoryDetail.tsx:130 #: src/pages/part/CategoryDetail.tsx:265 #: src/pages/part/CategoryDetail.tsx:304 @@ -1802,8 +1807,8 @@ msgstr "零件" #: src/components/nav/NavigationDrawer.tsx:84 #: src/components/render/Part.tsx:30 #: src/defaults/links.tsx:13 -#: src/forms/StockForms.tsx:700 -#: src/pages/Index/Settings/SystemSettings.tsx:204 +#: src/forms/StockForms.tsx:702 +#: src/pages/Index/Settings/SystemSettings.tsx:206 #: src/pages/part/PartDetail.tsx:497 #: src/pages/stock/LocationDetail.tsx:351 #: src/pages/stock/StockDetail.tsx:547 @@ -1813,7 +1818,7 @@ msgstr "庫存" #: src/components/nav/NavigationDrawer.tsx:91 #: src/defaults/links.tsx:15 -#: src/pages/build/BuildDetail.tsx:545 +#: src/pages/build/BuildDetail.tsx:551 #: src/pages/build/BuildIndex.tsx:36 msgid "Manufacturing" msgstr "" @@ -1824,24 +1829,24 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:261 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:353 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:504 -#: src/pages/purchasing/PurchasingIndex.tsx:61 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:510 +#: src/pages/purchasing/PurchasingIndex.tsx:77 msgid "Purchasing" msgstr "採購中" #: src/components/nav/NavigationDrawer.tsx:105 #: src/defaults/links.tsx:24 #: src/pages/company/CustomerDetail.tsx:9 -#: src/pages/sales/ReturnOrderDetail.tsx:491 +#: src/pages/sales/ReturnOrderDetail.tsx:497 #: src/pages/sales/SalesIndex.tsx:55 -#: src/pages/sales/SalesOrderDetail.tsx:555 +#: src/pages/sales/SalesOrderDetail.tsx:561 #: src/pages/sales/SalesOrderShipmentDetail.tsx:360 msgid "Sales" msgstr "銷售" #: src/components/nav/NavigationDrawer.tsx:129 #: src/components/nav/NotificationDrawer.tsx:179 -#: src/pages/Index/Settings/SystemSettings.tsx:109 +#: src/pages/Index/Settings/SystemSettings.tsx:111 #: src/pages/Index/Settings/UserSettings.tsx:97 #: src/pages/Notifications.tsx:66 #: src/pages/Notifications.tsx:158 @@ -1859,16 +1864,14 @@ msgid "Navigation" msgstr "導航欄" #: src/components/nav/NavigationDrawer.tsx:186 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:413 +#: src/forms/PurchaseOrderForms.tsx:755 +#: src/forms/StockForms.tsx:704 +#: src/forms/StockForms.tsx:748 +#: src/forms/StockForms.tsx:787 +#: src/forms/StockForms.tsx:823 +#: src/forms/StockForms.tsx:902 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:447 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:785 #: src/tables/RowActions.tsx:155 #: src/tables/build/BuildLineTable.tsx:100 msgid "Actions" @@ -1891,45 +1894,80 @@ msgstr "查看全部通知" msgid "You have no unread notifications." msgstr "您沒有未讀通知" -#: src/components/nav/SearchDrawer.tsx:85 +#: src/components/nav/SearchDrawer.tsx:104 +msgid "No Overview Available" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:105 +msgid "No overview available for this model type" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:123 +msgid "View all results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:138 msgid "results" msgstr "結果" -#: src/components/nav/SearchDrawer.tsx:385 -msgid "Enter search text" -msgstr "輸入搜索文本" - -#: src/components/nav/SearchDrawer.tsx:396 -msgid "Refresh search results" +#: src/components/nav/SearchDrawer.tsx:142 +msgid "Remove search group" msgstr "" -#: src/components/nav/SearchDrawer.tsx:407 -#: src/components/nav/SearchDrawer.tsx:414 -msgid "Search Options" -msgstr "搜索選項" +#: src/components/nav/SearchDrawer.tsx:275 +#: src/pages/company/ManufacturerPartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartSupplierDetail.tsx:15 +#: src/pages/purchasing/PurchasingIndex.tsx:36 +msgid "Suppliers" +msgstr "供應商" -#: src/components/nav/SearchDrawer.tsx:417 -msgid "Regex search" -msgstr "正則表達式搜索" +#: src/components/nav/SearchDrawer.tsx:285 +#: src/pages/part/PartSupplierDetail.tsx:23 +#: src/pages/purchasing/PurchasingIndex.tsx:53 +msgid "Manufacturers" +msgstr "製造商" -#: src/components/nav/SearchDrawer.tsx:426 -msgid "Whole word search" -msgstr "全詞搜索" +#: src/components/nav/SearchDrawer.tsx:295 +#: src/pages/sales/SalesIndex.tsx:40 +msgid "Customers" +msgstr "客户" #: src/components/nav/SearchDrawer.tsx:462 #~ msgid "No results" #~ msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:466 +#: src/components/nav/SearchDrawer.tsx:467 +msgid "Enter search text" +msgstr "輸入搜索文本" + +#: src/components/nav/SearchDrawer.tsx:478 +msgid "Refresh search results" +msgstr "" + +#: src/components/nav/SearchDrawer.tsx:489 +#: src/components/nav/SearchDrawer.tsx:496 +msgid "Search Options" +msgstr "搜索選項" + +#: src/components/nav/SearchDrawer.tsx:499 +msgid "Regex search" +msgstr "正則表達式搜索" + +#: src/components/nav/SearchDrawer.tsx:508 +msgid "Whole word search" +msgstr "全詞搜索" + +#: src/components/nav/SearchDrawer.tsx:556 msgid "An error occurred during search query" msgstr "搜索查詢時發生錯誤" -#: src/components/nav/SearchDrawer.tsx:477 +#: src/components/nav/SearchDrawer.tsx:567 #: src/tables/part/PartTestTemplateTable.tsx:81 msgid "No Results" msgstr "無結果" -#: src/components/nav/SearchDrawer.tsx:480 +#: src/components/nav/SearchDrawer.tsx:570 msgid "No results available for search query" msgstr "沒有可供搜索查詢的結果" @@ -1965,15 +2003,15 @@ msgid "Plugin Information" msgstr "" #: src/components/plugins/PluginDrawer.tsx:73 -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:106 #: src/pages/build/BuildDetail.tsx:128 -#: src/pages/company/CompanyDetail.tsx:94 +#: src/pages/company/CompanyDetail.tsx:93 #: src/pages/company/ManufacturerPartDetail.tsx:92 #: src/pages/company/ManufacturerPartDetail.tsx:119 #: src/pages/company/SupplierPartDetail.tsx:144 #: src/pages/part/CategoryDetail.tsx:106 #: src/pages/part/PartDetail.tsx:178 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 #: src/pages/sales/ReturnOrderDetail.tsx:110 #: src/pages/sales/SalesOrderDetail.tsx:119 #: src/pages/stock/LocationDetail.tsx:105 @@ -2008,8 +2046,8 @@ msgid "Date" msgstr "日期" #: src/components/plugins/PluginDrawer.tsx:93 -#: src/forms/selectionListFields.tsx:103 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:398 +#: src/forms/selectionListFields.tsx:107 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:770 #: src/pages/part/PartDetail.tsx:331 #: src/tables/bom/UsedInTable.tsx:85 #: src/tables/company/CompanyTable.tsx:62 @@ -2017,10 +2055,10 @@ msgstr "日期" #: src/tables/machine/MachineListTable.tsx:336 #: src/tables/machine/MachineListTable.tsx:606 #: src/tables/part/ParametricPartTable.tsx:224 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:95 -#: src/tables/plugin/PluginListTable.tsx:402 +#: src/tables/plugin/PluginListTable.tsx:400 #: src/tables/purchasing/SupplierPartTable.tsx:100 #: src/tables/purchasing/SupplierPartTable.tsx:192 #: src/tables/settings/UserTable.tsx:283 @@ -2039,7 +2077,7 @@ msgstr "安裝路徑" #: src/components/plugins/PluginDrawer.tsx:116 #: src/tables/machine/MachineTypeTable.tsx:152 #: src/tables/machine/MachineTypeTable.tsx:276 -#: src/tables/plugin/PluginListTable.tsx:407 +#: src/tables/plugin/PluginListTable.tsx:405 msgid "Builtin" msgstr "內置" @@ -2053,7 +2091,7 @@ msgid "Plugin Settings" msgstr "插件設置" #: src/components/plugins/PluginDrawer.tsx:145 -#: src/components/render/ModelType.tsx:263 +#: src/components/render/ModelType.tsx:253 msgid "Plugin Configuration" msgstr "插件配置" @@ -2116,22 +2154,22 @@ msgstr "未知模型: {model}" #: src/components/render/ModelType.tsx:29 #: src/components/wizards/OrderPartsWizard.tsx:130 -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 -#: src/forms/StockForms.tsx:283 -#: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/BuildForms.tsx:280 +#: src/forms/BuildForms.tsx:354 +#: src/forms/BuildForms.tsx:408 +#: src/forms/BuildForms.tsx:544 +#: src/forms/PurchaseOrderForms.tsx:751 +#: src/forms/ReturnOrderForms.tsx:238 +#: src/forms/SalesOrderForms.tsx:266 +#: src/forms/StockForms.tsx:280 +#: src/forms/StockForms.tsx:699 +#: src/forms/StockForms.tsx:743 +#: src/forms/StockForms.tsx:782 +#: src/forms/StockForms.tsx:818 +#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:898 +#: src/forms/StockForms.tsx:946 +#: src/forms/StockForms.tsx:990 #: src/pages/build/BuildDetail.tsx:93 #: src/pages/part/PartDetail.tsx:990 #: src/tables/build/BuildAllocatedStockTable.tsx:95 @@ -2154,15 +2192,15 @@ msgstr "零件參數模板" msgid "Part Parameter Templates" msgstr "零件參數模板" -#: src/components/render/ModelType.tsx:46 +#: src/components/render/ModelType.tsx:45 msgid "Part Test Template" msgstr "零件測試模板" -#: src/components/render/ModelType.tsx:47 +#: src/components/render/ModelType.tsx:46 msgid "Part Test Templates" msgstr "零件測試模板" -#: src/components/render/ModelType.tsx:54 +#: src/components/render/ModelType.tsx:52 #: src/components/wizards/OrderPartsWizard.tsx:141 #: src/pages/company/SupplierPartDetail.tsx:407 #: src/pages/stock/StockDetail.tsx:213 @@ -2173,44 +2211,46 @@ msgstr "零件測試模板" msgid "Supplier Part" msgstr "供應商零件" -#: src/components/render/ModelType.tsx:55 +#: src/components/render/ModelType.tsx:53 +#: src/pages/purchasing/PurchasingIndex.tsx:47 msgid "Supplier Parts" msgstr "供應商零件" -#: src/components/render/ModelType.tsx:63 +#: src/components/render/ModelType.tsx:61 #: src/tables/part/PartPurchaseOrdersTable.tsx:55 #: src/tables/stock/StockItemTable.tsx:241 msgid "Manufacturer Part" msgstr "製造商零件" -#: src/components/render/ModelType.tsx:64 +#: src/components/render/ModelType.tsx:62 +#: src/pages/purchasing/PurchasingIndex.tsx:64 msgid "Manufacturer Parts" msgstr "製造商零件" -#: src/components/render/ModelType.tsx:72 +#: src/components/render/ModelType.tsx:70 #: src/pages/part/CategoryDetail.tsx:336 msgid "Part Category" msgstr "零件類別" -#: src/components/render/ModelType.tsx:73 +#: src/components/render/ModelType.tsx:71 #: src/pages/part/CategoryDetail.tsx:327 #: src/pages/part/PartDetail.tsx:979 msgid "Part Categories" msgstr "零件類別" -#: src/components/render/ModelType.tsx:81 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/components/render/ModelType.tsx:79 +#: src/forms/BuildForms.tsx:355 +#: src/forms/BuildForms.tsx:409 +#: src/forms/BuildForms.tsx:546 +#: src/forms/SalesOrderForms.tsx:268 #: src/pages/stock/StockDetail.tsx:910 #: src/tables/stock/StockTrackingTable.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:56 msgid "Stock Item" msgstr "庫存項" -#: src/components/render/ModelType.tsx:82 -#: src/pages/company/CompanyDetail.tsx:206 +#: src/components/render/ModelType.tsx:80 +#: src/pages/company/CompanyDetail.tsx:205 #: src/pages/part/CategoryDetail.tsx:279 #: src/pages/part/PartStocktakeDetail.tsx:115 #: src/pages/stock/LocationDetail.tsx:124 @@ -2219,70 +2259,70 @@ msgstr "庫存項" msgid "Stock Items" msgstr "庫存項" -#: src/components/render/ModelType.tsx:90 +#: src/components/render/ModelType.tsx:88 msgid "Stock Location" msgstr "庫存地點" -#: src/components/render/ModelType.tsx:91 +#: src/components/render/ModelType.tsx:89 #: src/pages/stock/LocationDetail.tsx:191 #: src/pages/stock/LocationDetail.tsx:372 #: src/pages/stock/StockDetail.tsx:901 msgid "Stock Locations" msgstr "庫存地點" -#: src/components/render/ModelType.tsx:99 +#: src/components/render/ModelType.tsx:97 msgid "Stock Location Type" msgstr "庫存地點類型" -#: src/components/render/ModelType.tsx:100 +#: src/components/render/ModelType.tsx:98 msgid "Stock Location Types" msgstr "庫存地點類型" -#: src/components/render/ModelType.tsx:105 +#: src/components/render/ModelType.tsx:103 #: src/pages/part/PartDetail.tsx:602 msgid "Stock History" msgstr "庫存歷史記錄" -#: src/components/render/ModelType.tsx:106 +#: src/components/render/ModelType.tsx:104 msgid "Stock Histories" msgstr "庫存歷史記錄" -#: src/components/render/ModelType.tsx:111 +#: src/components/render/ModelType.tsx:109 msgid "Build" msgstr "生產" -#: src/components/render/ModelType.tsx:112 +#: src/components/render/ModelType.tsx:110 msgid "Builds" msgstr "生產" -#: src/components/render/ModelType.tsx:120 +#: src/components/render/ModelType.tsx:118 msgid "Build Line" msgstr "生產行" -#: src/components/render/ModelType.tsx:121 +#: src/components/render/ModelType.tsx:119 msgid "Build Lines" msgstr "生產行" -#: src/components/render/ModelType.tsx:128 +#: src/components/render/ModelType.tsx:126 msgid "Build Item" msgstr "構建項目:" -#: src/components/render/ModelType.tsx:129 +#: src/components/render/ModelType.tsx:127 msgid "Build Items" msgstr "構建多個項目" -#: src/components/render/ModelType.tsx:134 -#: src/pages/company/CompanyDetail.tsx:327 +#: src/components/render/ModelType.tsx:132 +#: src/pages/company/CompanyDetail.tsx:326 msgid "Company" msgstr "公司" -#: src/components/render/ModelType.tsx:135 +#: src/components/render/ModelType.tsx:133 msgid "Companies" msgstr "公司" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:140 #: src/pages/build/BuildDetail.tsx:219 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:216 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:222 #: src/pages/sales/ReturnOrderDetail.tsx:186 #: src/pages/sales/SalesOrderDetail.tsx:198 #: src/tables/ColumnRenderers.tsx:172 @@ -2291,15 +2331,15 @@ msgstr "公司" msgid "Project Code" msgstr "項目編碼" -#: src/components/render/ModelType.tsx:144 +#: src/components/render/ModelType.tsx:141 #: src/pages/Index/Settings/AdminCenter/Index.tsx:146 msgid "Project Codes" msgstr "項目編碼" -#: src/components/render/ModelType.tsx:151 +#: src/components/render/ModelType.tsx:147 #: src/components/wizards/OrderPartsWizard.tsx:180 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:33 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:501 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:507 #: src/pages/stock/StockDetail.tsx:275 #: src/tables/part/PartPurchaseOrdersTable.tsx:31 #: src/tables/stock/StockItemTable.tsx:229 @@ -2307,27 +2347,27 @@ msgstr "項目編碼" msgid "Purchase Order" msgstr "採購訂單" -#: src/components/render/ModelType.tsx:152 -#: src/pages/Index/Settings/SystemSettings.tsx:248 -#: src/pages/company/CompanyDetail.tsx:199 +#: src/components/render/ModelType.tsx:148 +#: src/pages/Index/Settings/SystemSettings.tsx:250 +#: src/pages/company/CompanyDetail.tsx:198 #: src/pages/company/SupplierPartDetail.tsx:266 #: src/pages/part/PartDetail.tsx:573 -#: src/pages/purchasing/PurchasingIndex.tsx:25 +#: src/pages/purchasing/PurchasingIndex.tsx:29 msgid "Purchase Orders" msgstr "採購訂單" -#: src/components/render/ModelType.tsx:160 +#: src/components/render/ModelType.tsx:156 msgid "Purchase Order Line" msgstr "採購訂單行" -#: src/components/render/ModelType.tsx:161 +#: src/components/render/ModelType.tsx:157 msgid "Purchase Order Lines" msgstr "採購訂單行" -#: src/components/render/ModelType.tsx:166 +#: src/components/render/ModelType.tsx:162 #: src/pages/build/BuildDetail.tsx:160 #: src/pages/part/pricing/SaleHistoryPanel.tsx:24 -#: src/pages/sales/SalesOrderDetail.tsx:550 +#: src/pages/sales/SalesOrderDetail.tsx:556 #: src/pages/sales/SalesOrderShipmentDetail.tsx:95 #: src/pages/sales/SalesOrderShipmentDetail.tsx:358 #: src/pages/stock/StockDetail.tsx:284 @@ -2337,77 +2377,76 @@ msgstr "採購訂單行" msgid "Sales Order" msgstr "銷售訂單" -#: src/components/render/ModelType.tsx:167 -#: src/pages/Index/Settings/SystemSettings.tsx:264 -#: src/pages/company/CompanyDetail.tsx:219 +#: src/components/render/ModelType.tsx:163 +#: src/pages/Index/Settings/SystemSettings.tsx:266 +#: src/pages/company/CompanyDetail.tsx:218 #: src/pages/part/PartDetail.tsx:585 #: src/pages/sales/SalesIndex.tsx:26 msgid "Sales Orders" msgstr "銷售訂單" -#: src/components/render/ModelType.tsx:175 +#: src/components/render/ModelType.tsx:171 #: src/pages/sales/SalesOrderShipmentDetail.tsx:357 msgid "Sales Order Shipment" msgstr "銷售訂單配送" -#: src/components/render/ModelType.tsx:176 +#: src/components/render/ModelType.tsx:172 msgid "Sales Order Shipments" msgstr "銷售訂單配送" -#: src/components/render/ModelType.tsx:183 -#: src/pages/sales/ReturnOrderDetail.tsx:486 +#: src/components/render/ModelType.tsx:178 +#: src/pages/sales/ReturnOrderDetail.tsx:492 #: src/tables/stock/StockTrackingTable.tsx:143 msgid "Return Order" msgstr "退貨訂單" -#: src/components/render/ModelType.tsx:184 -#: src/pages/Index/Settings/SystemSettings.tsx:280 -#: src/pages/company/CompanyDetail.tsx:226 +#: src/components/render/ModelType.tsx:179 +#: src/pages/Index/Settings/SystemSettings.tsx:282 +#: src/pages/company/CompanyDetail.tsx:225 #: src/pages/part/PartDetail.tsx:592 #: src/pages/sales/SalesIndex.tsx:33 msgid "Return Orders" msgstr "退貨訂單" -#: src/components/render/ModelType.tsx:192 +#: src/components/render/ModelType.tsx:187 msgid "Return Order Line Item" msgstr "退貨訂單行項目" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:188 msgid "Return Order Line Items" msgstr "退貨訂單行項目" -#: src/components/render/ModelType.tsx:198 +#: src/components/render/ModelType.tsx:193 #: src/tables/company/AddressTable.tsx:48 msgid "Address" msgstr "地址" -#: src/components/render/ModelType.tsx:199 -#: src/pages/company/CompanyDetail.tsx:259 +#: src/components/render/ModelType.tsx:194 +#: src/pages/company/CompanyDetail.tsx:258 msgid "Addresses" msgstr "地址" -#: src/components/render/ModelType.tsx:206 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:208 +#: src/components/render/ModelType.tsx:200 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:214 #: src/pages/sales/ReturnOrderDetail.tsx:178 #: src/pages/sales/SalesOrderDetail.tsx:190 msgid "Contact" msgstr "聯繫人" -#: src/components/render/ModelType.tsx:207 -#: src/pages/company/CompanyDetail.tsx:253 +#: src/components/render/ModelType.tsx:201 +#: src/pages/company/CompanyDetail.tsx:252 msgid "Contacts" msgstr "聯繫人" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:207 msgid "Owner" msgstr "所有者" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:208 msgid "Owners" msgstr "所有者" -#: src/components/render/ModelType.tsx:222 -#: src/pages/Auth/ChangePassword.tsx:93 +#: src/components/render/ModelType.tsx:214 #: src/tables/settings/BarcodeScanHistoryTable.tsx:79 #: src/tables/settings/BarcodeScanHistoryTable.tsx:209 #: src/tables/settings/ImportSessionTable.tsx:121 @@ -2418,80 +2457,80 @@ msgstr "所有者" msgid "User" msgstr "用户" -#: src/components/render/ModelType.tsx:223 +#: src/components/render/ModelType.tsx:215 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:15 msgid "Users" msgstr "用户" -#: src/components/render/ModelType.tsx:230 +#: src/components/render/ModelType.tsx:221 msgid "Group" msgstr "羣組" -#: src/components/render/ModelType.tsx:231 +#: src/components/render/ModelType.tsx:222 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:23 #: src/tables/settings/UserTable.tsx:137 #: src/tables/settings/UserTable.tsx:200 msgid "Groups" msgstr "羣組" +#: src/components/render/ModelType.tsx:229 +msgid "Import Session" +msgstr "導入會話" + +#: src/components/render/ModelType.tsx:230 +msgid "Import Sessions" +msgstr "導入會話" + #: src/components/render/ModelType.tsx:234 #~ msgid "Purchase Order Line Item" #~ msgstr "Purchase Order Line Item" -#: src/components/render/ModelType.tsx:239 -msgid "Import Session" -msgstr "導入會話" - -#: src/components/render/ModelType.tsx:240 -msgid "Import Sessions" -msgstr "導入會話" - -#: src/components/render/ModelType.tsx:247 +#: src/components/render/ModelType.tsx:237 msgid "Label Template" msgstr "標籤模板" -#: src/components/render/ModelType.tsx:248 +#: src/components/render/ModelType.tsx:238 #: src/pages/Index/Settings/AdminCenter/Index.tsx:187 #: src/pages/Index/Settings/AdminCenter/LabelTemplatePanel.tsx:32 msgid "Label Templates" msgstr "標籤模板" -#: src/components/render/ModelType.tsx:255 +#: src/components/render/ModelType.tsx:245 msgid "Report Template" msgstr "報告模板" -#: src/components/render/ModelType.tsx:256 +#: src/components/render/ModelType.tsx:246 #: src/pages/Index/Settings/AdminCenter/Index.tsx:193 #: src/pages/Index/Settings/AdminCenter/ReportTemplatePanel.tsx:47 msgid "Report Templates" msgstr "報告模板" -#: src/components/render/ModelType.tsx:264 +#: src/components/render/ModelType.tsx:254 msgid "Plugin Configurations" msgstr "插件配置" +#: src/components/render/ModelType.tsx:261 +msgid "Content Type" +msgstr "內容類型" + +#: src/components/render/ModelType.tsx:262 +msgid "Content Types" +msgstr "內容類型" + #: src/components/render/ModelType.tsx:264 #~ msgid "Unknown Model" #~ msgstr "Unknown Model" -#: src/components/render/ModelType.tsx:271 -msgid "Content Type" -msgstr "內容類型" - -#: src/components/render/ModelType.tsx:272 -msgid "Content Types" -msgstr "內容類型" - -#: src/components/render/ModelType.tsx:277 +#: src/components/render/ModelType.tsx:267 msgid "Selection List" msgstr "" -#: src/components/render/ModelType.tsx:278 +#: src/components/render/ModelType.tsx:268 #: src/pages/Index/Settings/AdminCenter/PartParameterPanel.tsx:21 msgid "Selection Lists" msgstr "" -#: src/components/render/ModelType.tsx:284 +#: src/components/render/ModelType.tsx:274 #: src/tables/machine/MachineListTable.tsx:354 #: src/tables/machine/MachineTypeTable.tsx:282 msgid "Errors" @@ -2512,7 +2551,7 @@ msgstr "配送" #: src/components/render/Part.tsx:25 #: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:313 +#: src/pages/company/CompanyDetail.tsx:312 #: src/pages/company/SupplierPartDetail.tsx:366 #: src/pages/part/PartDetail.tsx:784 msgid "Inactive" @@ -2520,7 +2559,7 @@ msgstr "未激活" #: src/components/render/Part.tsx:28 #: src/tables/bom/BomTable.tsx:206 -#: src/tables/part/PartTable.tsx:136 +#: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "無庫存" @@ -2536,10 +2575,10 @@ msgstr "序列號" #: src/components/render/Stock.tsx:63 #: src/forms/BuildForms.tsx:213 -#: src/forms/BuildForms.tsx:525 -#: src/forms/PurchaseOrderForms.tsx:749 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:754 +#: src/forms/ReturnOrderForms.tsx:239 +#: src/forms/SalesOrderForms.tsx:269 #: src/pages/part/PartSchedulingDetail.tsx:82 #: src/pages/part/PartStocktakeDetail.tsx:60 #: src/pages/part/PartStocktakeDetail.tsx:238 @@ -2560,6 +2599,22 @@ msgstr "序列號" msgid "Quantity" msgstr "數量" +#: src/components/render/Stock.tsx:69 +#: src/forms/BuildForms.tsx:282 +#: src/forms/BuildForms.tsx:356 +#: src/forms/BuildForms.tsx:410 +#: src/forms/StockForms.tsx:701 +#: src/forms/StockForms.tsx:745 +#: src/forms/StockForms.tsx:784 +#: src/forms/StockForms.tsx:820 +#: src/forms/StockForms.tsx:858 +#: src/forms/StockForms.tsx:900 +#: src/forms/StockForms.tsx:948 +#: src/forms/StockForms.tsx:992 +#: src/tables/build/BuildLineTable.tsx:88 +msgid "Batch" +msgstr "批次" + #: src/components/settings/SettingItem.tsx:47 #: src/components/settings/SettingItem.tsx:100 #~ msgid "{0} updated successfully" @@ -3045,7 +3100,7 @@ msgstr "" #: src/components/wizards/OrderPartsWizard.tsx:383 #: src/tables/build/BuildLineTable.tsx:649 -#: src/tables/part/PartTable.tsx:356 +#: src/tables/part/PartTable.tsx:354 #: src/tables/sales/SalesOrderLineItemTable.tsx:326 msgid "Order Parts" msgstr "" @@ -3509,7 +3564,7 @@ msgstr "" #~ msgid "Remove output" #~ msgstr "Remove output" -#: src/forms/BuildForms.tsx:279 +#: src/forms/BuildForms.tsx:281 #: src/tables/build/BuildAllocatedStockTable.tsx:147 #: src/tables/build/BuildOrderTestTable.tsx:184 #: src/tables/build/BuildOrderTestTable.tsx:208 @@ -3517,22 +3572,15 @@ msgstr "" msgid "Build Output" msgstr "生產產出" -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/tables/build/BuildLineTable.tsx:88 -msgid "Batch" -msgstr "批次" - -#: src/forms/BuildForms.tsx:279 -#: src/forms/BuildForms.tsx:347 -#: src/forms/BuildForms.tsx:395 -#: src/forms/PurchaseOrderForms.tsx:662 +#: src/forms/BuildForms.tsx:283 +#: src/forms/BuildForms.tsx:357 +#: src/forms/BuildForms.tsx:411 +#: src/forms/PurchaseOrderForms.tsx:674 #: src/forms/ReturnOrderForms.tsx:193 -#: src/forms/ReturnOrderForms.tsx:237 -#: src/forms/StockForms.tsx:625 +#: src/forms/ReturnOrderForms.tsx:240 +#: src/forms/StockForms.tsx:623 #: src/pages/build/BuildDetail.tsx:107 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:145 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 #: src/pages/sales/ReturnOrderDetail.tsx:116 #: src/pages/sales/SalesOrderDetail.tsx:125 #: src/pages/stock/StockDetail.tsx:140 @@ -3548,59 +3596,59 @@ msgstr "批次" msgid "Status" msgstr "狀態" -#: src/forms/BuildForms.tsx:299 +#: src/forms/BuildForms.tsx:305 msgid "Complete Build Outputs" msgstr "完成生產輸出" -#: src/forms/BuildForms.tsx:302 +#: src/forms/BuildForms.tsx:308 msgid "Build outputs have been completed" msgstr "生產已完成" -#: src/forms/BuildForms.tsx:363 +#: src/forms/BuildForms.tsx:375 msgid "Scrap Build Outputs" msgstr "報廢生產輸出" -#: src/forms/BuildForms.tsx:366 +#: src/forms/BuildForms.tsx:378 msgid "Build outputs have been scrapped" msgstr "生產已完成" -#: src/forms/BuildForms.tsx:403 -msgid "Cancel Build Outputs" -msgstr "取消生產輸出" - -#: src/forms/BuildForms.tsx:406 -msgid "Build outputs have been cancelled" -msgstr "生產已完成" - #: src/forms/BuildForms.tsx:408 #~ msgid "Selected build outputs will be deleted" #~ msgstr "Selected build outputs will be deleted" +#: src/forms/BuildForms.tsx:421 +msgid "Cancel Build Outputs" +msgstr "取消生產輸出" + +#: src/forms/BuildForms.tsx:424 +msgid "Build outputs have been cancelled" +msgstr "生產已完成" + #: src/forms/BuildForms.tsx:470 #~ msgid "Remove line" #~ msgstr "Remove line" -#: src/forms/BuildForms.tsx:525 -#: src/forms/SalesOrderForms.tsx:265 +#: src/forms/BuildForms.tsx:545 +#: src/forms/SalesOrderForms.tsx:267 #: src/tables/build/BuildLineTable.tsx:181 #: src/tables/sales/SalesOrderLineItemTable.tsx:298 #: src/tables/stock/StockItemTable.tsx:322 msgid "Allocated" msgstr "已分配" -#: src/forms/BuildForms.tsx:555 +#: src/forms/BuildForms.tsx:579 #: src/forms/SalesOrderForms.tsx:256 #: src/pages/build/BuildDetail.tsx:232 msgid "Source Location" msgstr "來源地點" -#: src/forms/BuildForms.tsx:556 +#: src/forms/BuildForms.tsx:580 #: src/forms/SalesOrderForms.tsx:257 msgid "Select the source location for the stock allocation" msgstr "選擇分配庫存的源位置" -#: src/forms/BuildForms.tsx:576 -#: src/forms/SalesOrderForms.tsx:291 +#: src/forms/BuildForms.tsx:600 +#: src/forms/SalesOrderForms.tsx:297 #: src/tables/build/BuildLineTable.tsx:442 #: src/tables/build/BuildLineTable.tsx:574 #: src/tables/build/BuildLineTable.tsx:664 @@ -3609,8 +3657,8 @@ msgstr "選擇分配庫存的源位置" msgid "Allocate Stock" msgstr "分配庫存" -#: src/forms/BuildForms.tsx:579 -#: src/forms/SalesOrderForms.tsx:296 +#: src/forms/BuildForms.tsx:603 +#: src/forms/SalesOrderForms.tsx:302 msgid "Stock items allocated" msgstr "分配的庫存項目" @@ -3623,7 +3671,7 @@ msgstr "分配的庫存項目" #: src/pages/part/CategoryDetail.tsx:122 #: src/pages/part/PartDetail.tsx:384 #: src/tables/part/PartCategoryTable.tsx:90 -#: src/tables/part/PartTable.tsx:302 +#: src/tables/part/PartTable.tsx:300 msgid "Subscribed" msgstr "已訂閲" @@ -3651,31 +3699,31 @@ msgstr "上級零件類別" msgid "Subscribe to notifications for this category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:347 +#: src/forms/PurchaseOrderForms.tsx:350 msgid "Assign Batch Code and Serial Numbers" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:349 +#: src/forms/PurchaseOrderForms.tsx:352 msgid "Assign Batch Code" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:369 +#: src/forms/PurchaseOrderForms.tsx:372 msgid "Choose Location" msgstr "選擇位置" -#: src/forms/PurchaseOrderForms.tsx:377 +#: src/forms/PurchaseOrderForms.tsx:380 msgid "Item Destination selected" msgstr "已選擇項目目的地" -#: src/forms/PurchaseOrderForms.tsx:387 +#: src/forms/PurchaseOrderForms.tsx:390 msgid "Part category default location selected" msgstr "已選擇零件類別默認位置" -#: src/forms/PurchaseOrderForms.tsx:397 +#: src/forms/PurchaseOrderForms.tsx:400 msgid "Received stock location selected" msgstr "已選擇接收庫存位置" -#: src/forms/PurchaseOrderForms.tsx:402 +#: src/forms/PurchaseOrderForms.tsx:405 msgid "Default location selected" msgstr "已選擇默認位置" @@ -3688,60 +3736,60 @@ msgstr "已選擇默認位置" #~ msgid "Remove item from list" #~ msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:464 msgid "Set Location" msgstr "設置位置" -#: src/forms/PurchaseOrderForms.tsx:478 +#: src/forms/PurchaseOrderForms.tsx:481 msgid "Set Expiry Date" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:486 -#: src/forms/StockForms.tsx:606 +#: src/forms/PurchaseOrderForms.tsx:489 +#: src/forms/StockForms.tsx:604 msgid "Adjust Packaging" msgstr "調整封包" -#: src/forms/PurchaseOrderForms.tsx:494 -#: src/forms/StockForms.tsx:597 +#: src/forms/PurchaseOrderForms.tsx:497 +#: src/forms/StockForms.tsx:595 msgid "Change Status" msgstr "更改狀態" -#: src/forms/PurchaseOrderForms.tsx:500 +#: src/forms/PurchaseOrderForms.tsx:503 msgid "Add Note" msgstr "添加備註" -#: src/forms/PurchaseOrderForms.tsx:547 +#: src/forms/PurchaseOrderForms.tsx:552 #: src/forms/StockForms.tsx:700 -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:744 +#: src/forms/StockForms.tsx:783 +#: src/forms/StockForms.tsx:819 +#: src/forms/StockForms.tsx:857 +#: src/forms/StockForms.tsx:899 +#: src/forms/StockForms.tsx:947 +#: src/forms/StockForms.tsx:991 #: src/pages/stock/StockDetail.tsx:221 #: src/tables/ColumnRenderers.tsx:61 #: src/tables/stock/StockTrackingTable.tsx:99 msgid "Location" msgstr "位置" -#: src/forms/PurchaseOrderForms.tsx:562 -msgid "Store at default location" -msgstr "存儲在默認位置" - #: src/forms/PurchaseOrderForms.tsx:566 #~ msgid "Serial numbers" #~ msgstr "Serial numbers" -#: src/forms/PurchaseOrderForms.tsx:577 +#: src/forms/PurchaseOrderForms.tsx:567 +msgid "Store at default location" +msgstr "存儲在默認位置" + +#: src/forms/PurchaseOrderForms.tsx:582 msgid "Store at line item destination" msgstr "存儲在行項目目標" -#: src/forms/PurchaseOrderForms.tsx:589 +#: src/forms/PurchaseOrderForms.tsx:594 msgid "Store with already received stock" msgstr "存儲已收到的庫存" -#: src/forms/PurchaseOrderForms.tsx:610 +#: src/forms/PurchaseOrderForms.tsx:618 #: src/pages/build/BuildDetail.tsx:246 #: src/pages/stock/StockDetail.tsx:204 #: src/pages/stock/StockDetail.tsx:859 @@ -3753,31 +3801,35 @@ msgstr "存儲已收到的庫存" msgid "Batch Code" msgstr "批號" -#: src/forms/PurchaseOrderForms.tsx:611 +#: src/forms/PurchaseOrderForms.tsx:619 msgid "Enter batch code for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:623 +#: src/forms/PurchaseOrderForms.tsx:632 #: src/forms/StockForms.tsx:164 msgid "Serial Numbers" msgstr "序列號" -#: src/forms/PurchaseOrderForms.tsx:624 +#: src/forms/PurchaseOrderForms.tsx:633 msgid "Enter serial numbers for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:637 +#: src/forms/PurchaseOrderForms.tsx:647 #: src/pages/stock/StockDetail.tsx:305 #: src/tables/stock/StockItemTable.tsx:279 msgid "Expiry Date" msgstr "有效期至" -#: src/forms/PurchaseOrderForms.tsx:638 +#: src/forms/PurchaseOrderForms.tsx:648 msgid "Enter an expiry date for received items" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:649 -#: src/forms/StockForms.tsx:641 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/PurchaseOrderForms.tsx:660 +#: src/forms/StockForms.tsx:639 #: src/pages/company/SupplierPartDetail.tsx:172 #: src/pages/company/SupplierPartDetail.tsx:236 #: src/pages/stock/StockDetail.tsx:342 @@ -3785,23 +3837,19 @@ msgstr "" msgid "Packaging" msgstr "包裝" -#: src/forms/PurchaseOrderForms.tsx:658 -#~ msgid "Receive line items" -#~ msgstr "Receive line items" - -#: src/forms/PurchaseOrderForms.tsx:671 +#: src/forms/PurchaseOrderForms.tsx:684 #: src/pages/company/SupplierPartDetail.tsx:119 #: src/tables/ColumnRenderers.tsx:144 msgid "Note" msgstr "備註" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:752 #: src/pages/company/SupplierPartDetail.tsx:137 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 msgid "SKU" msgstr "庫存單位 (SKU)" -#: src/forms/PurchaseOrderForms.tsx:749 +#: src/forms/PurchaseOrderForms.tsx:753 #: src/tables/part/PartPurchaseOrdersTable.tsx:126 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:252 @@ -3809,15 +3857,19 @@ msgstr "庫存單位 (SKU)" msgid "Received" msgstr "已接收" -#: src/forms/PurchaseOrderForms.tsx:761 +#: src/forms/PurchaseOrderForms.tsx:770 msgid "Receive Line Items" msgstr "接收行項目" -#: src/forms/ReturnOrderForms.tsx:248 +#: src/forms/PurchaseOrderForms.tsx:776 +msgid "Items received" +msgstr "" + +#: src/forms/ReturnOrderForms.tsx:253 msgid "Receive Items" msgstr "接收物品" -#: src/forms/ReturnOrderForms.tsx:255 +#: src/forms/ReturnOrderForms.tsx:260 msgid "Item received into stock" msgstr "已收到庫存物品" @@ -3854,40 +3906,40 @@ msgstr "輸入新庫存的序列號(或留空)" msgid "Stock Status" msgstr "庫存狀態" -#: src/forms/StockForms.tsx:240 +#: src/forms/StockForms.tsx:237 #: src/pages/stock/StockDetail.tsx:574 #: src/tables/stock/StockItemTable.tsx:533 #: src/tables/stock/StockItemTable.tsx:665 msgid "Add Stock Item" msgstr "編輯庫存項" -#: src/forms/StockForms.tsx:284 +#: src/forms/StockForms.tsx:281 msgid "Select the part to install" msgstr "選擇要安裝的零件" -#: src/forms/StockForms.tsx:405 +#: src/forms/StockForms.tsx:402 msgid "Confirm Stock Transfer" msgstr "" -#: src/forms/StockForms.tsx:528 +#: src/forms/StockForms.tsx:525 msgid "Loading..." msgstr "正在加載..." -#: src/forms/StockForms.tsx:585 +#: src/forms/StockForms.tsx:583 msgid "Move to default location" msgstr "移動到默認位置" -#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:703 msgid "Move" msgstr "移動" -#: src/forms/StockForms.tsx:737 -#: src/forms/StockForms.tsx:769 -#: src/forms/StockForms.tsx:798 -#: src/forms/StockForms.tsx:829 -#: src/forms/StockForms.tsx:865 -#: src/forms/StockForms.tsx:907 -#: src/forms/StockForms.tsx:945 +#: src/forms/StockForms.tsx:746 +#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:859 +#: src/forms/StockForms.tsx:901 +#: src/forms/StockForms.tsx:949 +#: src/forms/StockForms.tsx:993 #: src/pages/company/SupplierPartDetail.tsx:190 #: src/pages/company/SupplierPartDetail.tsx:371 #: src/pages/part/PartDetail.tsx:251 @@ -3897,50 +3949,50 @@ msgstr "移動" msgid "In Stock" msgstr "入庫" -#: src/forms/StockForms.tsx:769 +#: src/forms/StockForms.tsx:786 #: src/pages/stock/StockDetail.tsx:718 #: src/tables/stock/StockItemTestResultTable.tsx:350 msgid "Add" msgstr "添加" -#: src/forms/StockForms.tsx:798 +#: src/forms/StockForms.tsx:822 #: src/pages/Index/Scan.tsx:180 #: src/pages/stock/StockDetail.tsx:707 msgid "Count" msgstr "總計" -#: src/forms/StockForms.tsx:1050 +#: src/forms/StockForms.tsx:1100 #: src/pages/stock/StockDetail.tsx:719 #: src/tables/stock/StockItemTable.tsx:583 msgid "Add Stock" msgstr "添加庫存" -#: src/forms/StockForms.tsx:1051 +#: src/forms/StockForms.tsx:1101 msgid "Stock added" msgstr "" -#: src/forms/StockForms.tsx:1060 +#: src/forms/StockForms.tsx:1110 #: src/pages/stock/StockDetail.tsx:728 #: src/tables/stock/StockItemTable.tsx:592 msgid "Remove Stock" msgstr "移除庫存" -#: src/forms/StockForms.tsx:1061 +#: src/forms/StockForms.tsx:1111 msgid "Stock removed" msgstr "" -#: src/forms/StockForms.tsx:1070 +#: src/forms/StockForms.tsx:1120 #: src/pages/part/PartDetail.tsx:916 #: src/pages/stock/StockDetail.tsx:741 #: src/tables/stock/StockItemTable.tsx:601 msgid "Transfer Stock" msgstr "轉移庫存" -#: src/forms/StockForms.tsx:1071 +#: src/forms/StockForms.tsx:1121 msgid "Stock transferred" msgstr "" -#: src/forms/StockForms.tsx:1080 +#: src/forms/StockForms.tsx:1130 #: src/pages/part/PartDetail.tsx:905 #: src/pages/stock/LocationDetail.tsx:313 #: src/pages/stock/LocationDetail.tsx:317 @@ -3949,44 +4001,44 @@ msgstr "" msgid "Count Stock" msgstr "庫存數量" -#: src/forms/StockForms.tsx:1081 +#: src/forms/StockForms.tsx:1131 msgid "Stock counted" msgstr "" -#: src/forms/StockForms.tsx:1090 +#: src/forms/StockForms.tsx:1140 msgid "Change Stock Status" msgstr "更改庫存狀態" -#: src/forms/StockForms.tsx:1091 +#: src/forms/StockForms.tsx:1141 msgid "Stock status changed" msgstr "" -#: src/forms/StockForms.tsx:1100 +#: src/forms/StockForms.tsx:1150 msgid "Merge Stock" msgstr "合併庫存" -#: src/forms/StockForms.tsx:1101 +#: src/forms/StockForms.tsx:1151 msgid "Stock merged" msgstr "" -#: src/forms/StockForms.tsx:1116 +#: src/forms/StockForms.tsx:1166 msgid "Assign Stock to Customer" msgstr "" -#: src/forms/StockForms.tsx:1117 +#: src/forms/StockForms.tsx:1167 msgid "Stock assigned to customer" msgstr "" -#: src/forms/StockForms.tsx:1127 +#: src/forms/StockForms.tsx:1177 #: src/tables/stock/StockItemTable.tsx:654 msgid "Delete Stock Items" msgstr "刪除庫存項" -#: src/forms/StockForms.tsx:1128 +#: src/forms/StockForms.tsx:1178 msgid "Stock deleted" msgstr "" -#: src/forms/StockForms.tsx:1135 +#: src/forms/StockForms.tsx:1185 msgid "Parent stock location" msgstr "上級庫存地點" @@ -3998,7 +4050,7 @@ msgstr "" msgid "List of entries to choose from" msgstr "" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:104 #: src/pages/part/PartStocktakeDetail.tsx:63 #: src/tables/FilterSelectDrawer.tsx:93 #: src/tables/FilterSelectDrawer.tsx:116 @@ -4009,7 +4061,7 @@ msgstr "" msgid "Value" msgstr "值" -#: src/forms/selectionListFields.tsx:103 +#: src/forms/selectionListFields.tsx:105 msgid "Label" msgstr "" @@ -4061,17 +4113,15 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:131 -msgid "Logged Out" -msgstr "已登出" +#: src/functions/auth.tsx:114 +#: src/functions/auth.tsx:227 +msgid "Already logged in" +msgstr "" -#: src/functions/auth.tsx:132 -msgid "Successfully logged out" -msgstr "已成功登出" - -#: src/functions/auth.tsx:141 -#~ msgid "Already logged in" -#~ msgstr "Already logged in" +#: src/functions/auth.tsx:115 +#: src/functions/auth.tsx:228 +msgid "There is a conflicting session on the server for this browser. Please logout of that first." +msgstr "" #: src/functions/auth.tsx:142 #~ msgid "Found an existing login - using it to log you in." @@ -4081,20 +4131,28 @@ msgstr "已成功登出" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:170 +#: src/functions/auth.tsx:146 +msgid "Logged Out" +msgstr "已登出" + +#: src/functions/auth.tsx:147 +msgid "Successfully logged out" +msgstr "已成功登出" + +#: src/functions/auth.tsx:192 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "查看收件箱中的重置鏈接。這隻有在您有賬户的情況下才會起作用。也請檢查垃圾郵件。" -#: src/functions/auth.tsx:177 -#: src/pages/Auth/ResetPassword.tsx:39 +#: src/functions/auth.tsx:199 +#: src/pages/Auth/ResetPassword.tsx:48 msgid "Reset failed" msgstr "重置失敗" -#: src/functions/auth.tsx:208 +#: src/functions/auth.tsx:267 msgid "Logged In" msgstr "已登錄" -#: src/functions/auth.tsx:209 +#: src/functions/auth.tsx:268 msgid "Successfully logged in" msgstr "已成功登入" @@ -4166,40 +4224,52 @@ msgstr "確實要刪除此項目嗎?" msgid "Latest serial number" msgstr "最新序列號" -#: src/pages/Auth/ChangePassword.tsx:41 +#: src/pages/Auth/ChangePassword.tsx:46 msgid "Password could not be changed" msgstr "" #: src/pages/Auth/ChangePassword.tsx:67 +msgid "The two password fields didn’t match" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:83 msgid "Password Changed" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:68 -#: src/pages/Auth/ResetPassword.tsx:69 +#: src/pages/Auth/ChangePassword.tsx:84 +#: src/pages/Auth/ResetPassword.tsx:39 msgid "The password was set successfully. You can now login with your new password" msgstr "密碼設置成功。您現在可以使用新密碼登錄" -#: src/pages/Auth/ChangePassword.tsx:88 +#: src/pages/Auth/ChangePassword.tsx:113 msgid "Reset Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:103 +#: src/pages/Auth/ChangePassword.tsx:128 +msgid "Current Password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:129 +msgid "Enter your current password" +msgstr "" + +#: src/pages/Auth/ChangePassword.tsx:135 msgid "New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:104 +#: src/pages/Auth/ChangePassword.tsx:136 msgid "Enter your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:110 +#: src/pages/Auth/ChangePassword.tsx:142 msgid "Confirm New Password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:111 +#: src/pages/Auth/ChangePassword.tsx:143 msgid "Confirm your new password" msgstr "" -#: src/pages/Auth/ChangePassword.tsx:116 +#: src/pages/Auth/ChangePassword.tsx:148 msgid "Confirm" msgstr "" @@ -4207,7 +4277,7 @@ msgstr "" msgid "Checking if you are already logged in" msgstr "檢查您是否已經登錄" -#: src/pages/Auth/Login.tsx:43 +#: src/pages/Auth/Login.tsx:36 msgid "No selection" msgstr "未選擇" @@ -4219,8 +4289,8 @@ msgstr "未選擇" #~ msgid "Register below" #~ msgstr "Register below" -#: src/pages/Auth/Login.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:65 +#: src/pages/Auth/Login.tsx:126 +#: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" msgstr "登錄" @@ -4228,20 +4298,59 @@ msgstr "登錄" msgid "Logging out" msgstr "正在登出" +#: src/pages/Auth/MFALogin.tsx:32 +msgid "Multi-Factor Login" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:36 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:682 +msgid "TOTP Code" +msgstr "" + +#: src/pages/Auth/MFALogin.tsx:38 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:684 +msgid "Enter your TOTP or recovery code" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:27 +msgid "Failed to set up MFA" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:48 +msgid "MFA Setup Required" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:66 +msgid "Add TOTP" +msgstr "" + +#: src/pages/Auth/MFASetup.tsx:69 +msgid "Log off" +msgstr "" + #: src/pages/Auth/Reset.tsx:41 #: src/pages/Auth/Set-Password.tsx:112 #~ msgid "Send mail" #~ msgstr "Send mail" +#: src/pages/Auth/ResetPassword.tsx:29 +#: src/pages/Auth/VerifyEmail.tsx:18 +msgid "Key invalid" +msgstr "" + #: src/pages/Auth/ResetPassword.tsx:30 -msgid "Token invalid" -msgstr "令牌無效" +msgid "You need to provide a valid key to set a new password. Check your inbox for a reset link." +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:30 +#~ msgid "Token invalid" +#~ msgstr "Token invalid" #: src/pages/Auth/ResetPassword.tsx:31 -msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." -msgstr "您需要提供一個有效的令牌來設置一個新的密碼。請檢查收件箱以獲取重置鏈接。" +#~ msgid "You need to provide a valid token to set a new password. Check your inbox for a reset link." +#~ msgstr "You need to provide a valid token to set a new password. Check your inbox for a reset link." -#: src/pages/Auth/ResetPassword.tsx:68 +#: src/pages/Auth/ResetPassword.tsx:38 msgid "Password set" msgstr "密碼已設置" @@ -4249,6 +4358,14 @@ msgstr "密碼已設置" msgid "Set new password" msgstr "設置新密碼" +#: src/pages/Auth/ResetPassword.tsx:102 +msgid "The desired new password" +msgstr "" + +#: src/pages/Auth/ResetPassword.tsx:107 +msgid "Send Password" +msgstr "" + #: src/pages/Auth/Set-Password.tsx:49 #~ msgid "No token provided" #~ msgstr "No token provided" @@ -4257,6 +4374,18 @@ msgstr "設置新密碼" #~ msgid "You need to provide a token to set a new password. Check your inbox for a reset link." #~ msgstr "You need to provide a token to set a new password. Check your inbox for a reset link." +#: src/pages/Auth/VerifyEmail.tsx:19 +msgid "You need to provide a valid key." +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:51 +msgid "Verify Email" +msgstr "" + +#: src/pages/Auth/VerifyEmail.tsx:54 +msgid "Verify" +msgstr "" + #: src/pages/ErrorPage.tsx:16 msgid "Error: {0}" msgstr "錯誤:{0}" @@ -4551,10 +4680,6 @@ msgstr "" #~ msgid "No history" #~ msgstr "No history" -#: src/pages/Index/Scan.tsx:486 -#~ msgid "Type" -#~ msgstr "Type" - #: src/pages/Index/Scan.tsx:489 #~ msgid "Source" #~ msgstr "Source" @@ -4669,61 +4794,85 @@ msgstr "工作人員訪問" msgid "Superuser" msgstr "超級用户" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 -msgid "Single Sign On Accounts" -msgstr "單點登錄賬户" +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:23 +msgid "Secret" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:62 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:80 +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:29 +msgid "One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/QrRegistrationForm.tsx:30 +msgid "Enter the TOTP code to ensure it registered correctly" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:52 +msgid "Email Addresses" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:55 +#~ msgid "Single Sign On Accounts" +#~ msgstr "Single Sign On Accounts" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:60 +msgid "Single Sign On" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:68 msgid "Not enabled" msgstr "未啓用" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:65 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 +#~ msgid "Multifactor" +#~ msgstr "Multifactor" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:71 msgid "Single Sign On is not enabled for this server" msgstr "此服務器未啓用單點登錄" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:69 -msgid "Multifactor" -msgstr "多因素身份驗證" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:78 +msgid "Multi-Factor Authentication" +msgstr "" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:83 -msgid "Multifactor authentication is not configured for your account" -msgstr "您的賬户未配置多因素身份驗證" +#~ msgid "Multifactor authentication is not configured for your account" +#~ msgstr "Multifactor authentication is not configured for your account" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:92 -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:407 -msgid "Token" -msgstr "令牌" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:86 +msgid "Access Tokens" +msgstr "" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:139 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:125 +msgid "Error while updating email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:138 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:292 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:427 +msgid "Not Configured" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:141 +msgid "Currently no email addresses are registered." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:148 msgid "The following email addresses are associated with your account:" msgstr "以下電子郵件地址與您的賬户相關聯:" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:151 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:161 msgid "Primary" msgstr "主要的" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:156 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:166 msgid "Verified" msgstr "已驗證" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:160 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:170 msgid "Unverified" msgstr "未驗證" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:173 -msgid "Add Email Address" -msgstr "添加電子郵件地址" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:176 -msgid "E-Mail" -msgstr "郵箱" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:177 -msgid "E-Mail address" -msgstr "郵箱地址" - -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:189 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:188 msgid "Make Primary" msgstr "設為首選" @@ -4731,46 +4880,143 @@ msgstr "設為首選" msgid "Re-send Verification" msgstr "重新發送驗證" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:205 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:208 +msgid "Add Email Address" +msgstr "添加電子郵件地址" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:210 +msgid "E-Mail" +msgstr "郵箱" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:211 +msgid "E-Mail address" +msgstr "郵箱地址" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:223 +msgid "Error while adding email" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:234 msgid "Add Email" msgstr "添加電子郵件" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:270 -msgid "Provider has not been configured" -msgstr "未配置提供商" +#~ msgid "Provider has not been configured" +#~ msgstr "Provider has not been configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:280 -msgid "Not configured" -msgstr "未配置" +#~ msgid "Not configured" +#~ msgstr "Not configured" #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:283 -msgid "There are no social network accounts connected to this account." -msgstr "您當前沒有連接到此賬户的社交網絡賬户。" +#~ msgid "There are no social network accounts connected to this account." +#~ msgstr "There are no social network accounts connected to this account." #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:293 -msgid "You can sign in to your account using any of the following third party accounts" -msgstr "您可以使用下列任何第三方賬户登錄您的賬户" +#~ msgid "You can sign in to your account using any of the following third party accounts" +#~ msgstr "You can sign in to your account using any of the following third party accounts" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:368 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:295 +msgid "There are no providers connected to this account." +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:303 +msgid "You can sign in to your account using any of the following providers" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:316 +msgid "Remove Provider Link" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:406 +msgid "View" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:431 +msgid "No multi-factor tokens configured for this account" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:438 +msgid "Type" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:441 +msgid "Last used at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:444 +msgid "Created at" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:465 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:568 +msgid "Recovery Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:469 +msgid "Unused Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:474 +msgid "Used Codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:527 +msgid "Error while registering recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:561 +msgid "TOTP" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:562 +msgid "Time-based One-Time Password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:569 +msgid "One-Time pre-generated recovery codes" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:583 +msgid "Add Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:598 +msgid "Register TOTP Token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:623 +msgid "Error registering TOTP token" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:699 +msgid "Enter your password" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:741 msgid "Token is used - no actions" msgstr "令牌已被使用 - 沒有動作" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:375 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:748 msgid "Revoke" msgstr "撤銷" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:389 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:761 msgid "No tokens configured" msgstr "未配置令牌" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:401 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:773 msgid "Expiry" msgstr "到期" -#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:404 +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:776 msgid "Last Seen" msgstr "上一次查看時間" +#: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:779 +msgid "Token" +msgstr "令牌" + #: src/pages/Index/Settings/AccountSettings/UserThemePanel.tsx:65 #~ msgid "bars" #~ msgstr "bars" @@ -4843,6 +5089,14 @@ msgstr "邊框半徑" msgid "Loader" msgstr "加載器" +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:92 +msgid "Reauthentication" +msgstr "" + +#: src/pages/Index/Settings/AccountSettings/useConfirm.tsx:108 +msgid "OK" +msgstr "" + #: src/pages/Index/Settings/AdminCenter.tsx:91 #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" @@ -5112,11 +5366,11 @@ msgstr "所有單位" #~ msgid "System settings" #~ msgstr "System settings" -#: src/pages/Index/Settings/SystemSettings.tsx:91 +#: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" msgstr "條碼" -#: src/pages/Index/Settings/SystemSettings.tsx:115 +#: src/pages/Index/Settings/SystemSettings.tsx:117 msgid "Pricing" msgstr "定價" @@ -5128,19 +5382,19 @@ msgstr "定價" #~ msgid "Exchange Rates" #~ msgstr "Exchange Rates" -#: src/pages/Index/Settings/SystemSettings.tsx:150 +#: src/pages/Index/Settings/SystemSettings.tsx:152 msgid "Labels" msgstr "標籤" -#: src/pages/Index/Settings/SystemSettings.tsx:156 +#: src/pages/Index/Settings/SystemSettings.tsx:158 #: src/pages/Index/Settings/UserSettings.tsx:103 msgid "Reporting" msgstr "報告" -#: src/pages/Index/Settings/SystemSettings.tsx:230 +#: src/pages/Index/Settings/SystemSettings.tsx:232 #: src/pages/build/BuildIndex.tsx:27 #: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:373 +#: src/pages/sales/SalesOrderDetail.tsx:379 msgid "Build Orders" msgstr "生產訂單" @@ -5214,7 +5468,7 @@ msgid "IPN" msgstr "內部零件編碼 IPN" #: src/pages/build/BuildDetail.tsx:113 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:151 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:157 #: src/pages/sales/ReturnOrderDetail.tsx:122 #: src/pages/sales/SalesOrderDetail.tsx:131 #: src/pages/stock/StockDetail.tsx:146 @@ -5222,7 +5476,7 @@ msgid "Custom Status" msgstr "" #: src/pages/build/BuildDetail.tsx:122 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:118 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 #: src/pages/sales/ReturnOrderDetail.tsx:89 #: src/pages/sales/SalesOrderDetail.tsx:98 #: src/tables/ColumnRenderers.tsx:133 @@ -5251,7 +5505,7 @@ msgstr "發佈人" #: src/pages/build/BuildDetail.tsx:180 #: src/pages/part/PartDetail.tsx:406 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:224 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:230 #: src/pages/sales/ReturnOrderDetail.tsx:194 #: src/pages/sales/SalesOrderDetail.tsx:206 #: src/tables/Filter.tsx:270 @@ -5275,7 +5529,7 @@ msgstr "已創建" #~ msgstr "Link custom barcode to part" #: src/pages/build/BuildDetail.tsx:195 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 #: src/pages/sales/ReturnOrderDetail.tsx:220 #: src/pages/sales/SalesOrderDetail.tsx:231 #: src/tables/ColumnRenderers.tsx:249 @@ -5292,7 +5546,7 @@ msgstr "" #~ msgstr "Build Order updated" #: src/pages/build/BuildDetail.tsx:203 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:257 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:263 #: src/pages/sales/ReturnOrderDetail.tsx:228 #: src/pages/sales/SalesOrderDetail.tsx:239 #: src/tables/ColumnRenderers.tsx:257 @@ -5332,13 +5586,13 @@ msgid "Build Details" msgstr "生產詳情" #: src/pages/build/BuildDetail.tsx:282 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:311 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:317 #: src/pages/sales/ReturnOrderDetail.tsx:134 #: src/pages/sales/ReturnOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:281 -#: src/pages/sales/SalesOrderDetail.tsx:312 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:318 +#: src/pages/sales/SalesOrderDetail.tsx:327 msgid "Line Items" msgstr "行項目" @@ -5347,7 +5601,7 @@ msgid "Incomplete Outputs" msgstr "未出產" #: src/pages/build/BuildDetail.tsx:316 -#: src/pages/sales/SalesOrderDetail.tsx:359 +#: src/pages/sales/SalesOrderDetail.tsx:365 #: src/pages/sales/SalesOrderShipmentDetail.tsx:211 msgid "Allocated Stock" msgstr "已分配的庫存" @@ -5383,131 +5637,131 @@ msgstr "測試結果" msgid "Edit Build Order" msgstr "編輯生產訂單" -#: src/pages/build/BuildDetail.tsx:386 +#: src/pages/build/BuildDetail.tsx:395 #: src/tables/build/BuildOrderTable.tsx:216 #: src/tables/build/BuildOrderTable.tsx:231 msgid "Add Build Order" msgstr "添加生產訂單" -#: src/pages/build/BuildDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:404 msgid "Cancel Build Order" msgstr "取消生產訂單" -#: src/pages/build/BuildDetail.tsx:400 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:377 -#: src/pages/sales/ReturnOrderDetail.tsx:372 -#: src/pages/sales/SalesOrderDetail.tsx:406 +#: src/pages/build/BuildDetail.tsx:406 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:383 +#: src/pages/sales/ReturnOrderDetail.tsx:378 +#: src/pages/sales/SalesOrderDetail.tsx:412 msgid "Order cancelled" msgstr "訂單已取消" -#: src/pages/build/BuildDetail.tsx:401 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:376 -#: src/pages/sales/ReturnOrderDetail.tsx:371 -#: src/pages/sales/SalesOrderDetail.tsx:405 +#: src/pages/build/BuildDetail.tsx:407 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/SalesOrderDetail.tsx:411 msgid "Cancel this order" msgstr "取消此訂單" -#: src/pages/build/BuildDetail.tsx:410 +#: src/pages/build/BuildDetail.tsx:416 msgid "Hold Build Order" msgstr "掛起生產訂單" -#: src/pages/build/BuildDetail.tsx:412 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:384 -#: src/pages/sales/ReturnOrderDetail.tsx:379 -#: src/pages/sales/SalesOrderDetail.tsx:413 +#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/SalesOrderDetail.tsx:419 msgid "Place this order on hold" msgstr "將此訂單掛起" -#: src/pages/build/BuildDetail.tsx:413 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:385 -#: src/pages/sales/ReturnOrderDetail.tsx:380 -#: src/pages/sales/SalesOrderDetail.tsx:414 +#: src/pages/build/BuildDetail.tsx:419 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 +#: src/pages/sales/ReturnOrderDetail.tsx:386 +#: src/pages/sales/SalesOrderDetail.tsx:420 msgid "Order placed on hold" msgstr "掛起訂單" -#: src/pages/build/BuildDetail.tsx:418 +#: src/pages/build/BuildDetail.tsx:424 msgid "Issue Build Order" msgstr "發出生產訂單" -#: src/pages/build/BuildDetail.tsx:420 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:368 -#: src/pages/sales/ReturnOrderDetail.tsx:363 -#: src/pages/sales/SalesOrderDetail.tsx:397 +#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/SalesOrderDetail.tsx:403 msgid "Issue this order" msgstr "發出這個訂單" -#: src/pages/build/BuildDetail.tsx:421 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:369 -#: src/pages/sales/ReturnOrderDetail.tsx:364 -#: src/pages/sales/SalesOrderDetail.tsx:398 +#: src/pages/build/BuildDetail.tsx:427 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:375 +#: src/pages/sales/ReturnOrderDetail.tsx:370 +#: src/pages/sales/SalesOrderDetail.tsx:404 msgid "Order issued" msgstr "訂單發起" -#: src/pages/build/BuildDetail.tsx:426 +#: src/pages/build/BuildDetail.tsx:432 msgid "Complete Build Order" msgstr "完成生產訂單" -#: src/pages/build/BuildDetail.tsx:428 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 -#: src/pages/sales/ReturnOrderDetail.tsx:387 -#: src/pages/sales/SalesOrderDetail.tsx:432 +#: src/pages/build/BuildDetail.tsx:434 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:403 +#: src/pages/sales/ReturnOrderDetail.tsx:393 +#: src/pages/sales/SalesOrderDetail.tsx:438 msgid "Mark this order as complete" msgstr "標記該訂單為已完成" -#: src/pages/build/BuildDetail.tsx:429 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:391 -#: src/pages/sales/ReturnOrderDetail.tsx:388 -#: src/pages/sales/SalesOrderDetail.tsx:433 +#: src/pages/build/BuildDetail.tsx:435 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:397 +#: src/pages/sales/ReturnOrderDetail.tsx:394 +#: src/pages/sales/SalesOrderDetail.tsx:439 msgid "Order completed" msgstr "訂單已完成" -#: src/pages/build/BuildDetail.tsx:460 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:420 -#: src/pages/sales/ReturnOrderDetail.tsx:417 -#: src/pages/sales/SalesOrderDetail.tsx:462 +#: src/pages/build/BuildDetail.tsx:466 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:426 +#: src/pages/sales/ReturnOrderDetail.tsx:423 +#: src/pages/sales/SalesOrderDetail.tsx:468 msgid "Issue Order" msgstr "發佈訂單" -#: src/pages/build/BuildDetail.tsx:467 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:427 -#: src/pages/sales/ReturnOrderDetail.tsx:424 -#: src/pages/sales/SalesOrderDetail.tsx:476 +#: src/pages/build/BuildDetail.tsx:473 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:433 +#: src/pages/sales/ReturnOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:482 msgid "Complete Order" msgstr "完成訂單" -#: src/pages/build/BuildDetail.tsx:485 +#: src/pages/build/BuildDetail.tsx:491 msgid "Build Order Actions" msgstr "生產訂單操作" -#: src/pages/build/BuildDetail.tsx:490 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:449 -#: src/pages/sales/ReturnOrderDetail.tsx:446 -#: src/pages/sales/SalesOrderDetail.tsx:499 +#: src/pages/build/BuildDetail.tsx:496 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:455 +#: src/pages/sales/ReturnOrderDetail.tsx:452 +#: src/pages/sales/SalesOrderDetail.tsx:505 msgid "Edit order" msgstr "編輯訂單" -#: src/pages/build/BuildDetail.tsx:494 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:457 -#: src/pages/sales/ReturnOrderDetail.tsx:452 -#: src/pages/sales/SalesOrderDetail.tsx:504 +#: src/pages/build/BuildDetail.tsx:500 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:463 +#: src/pages/sales/ReturnOrderDetail.tsx:458 +#: src/pages/sales/SalesOrderDetail.tsx:510 msgid "Duplicate order" msgstr "複製訂單" -#: src/pages/build/BuildDetail.tsx:498 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:460 -#: src/pages/sales/ReturnOrderDetail.tsx:457 -#: src/pages/sales/SalesOrderDetail.tsx:507 +#: src/pages/build/BuildDetail.tsx:504 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:466 +#: src/pages/sales/ReturnOrderDetail.tsx:463 +#: src/pages/sales/SalesOrderDetail.tsx:513 msgid "Hold order" msgstr "掛起訂單" -#: src/pages/build/BuildDetail.tsx:503 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:465 -#: src/pages/sales/ReturnOrderDetail.tsx:462 -#: src/pages/sales/SalesOrderDetail.tsx:512 +#: src/pages/build/BuildDetail.tsx:509 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:471 +#: src/pages/sales/ReturnOrderDetail.tsx:468 +#: src/pages/sales/SalesOrderDetail.tsx:518 msgid "Cancel order" msgstr "取消訂單" -#: src/pages/build/BuildDetail.tsx:539 +#: src/pages/build/BuildDetail.tsx:545 #: src/pages/stock/StockDetail.tsx:267 #: src/tables/build/BuildAllocatedStockTable.tsx:77 #: src/tables/part/PartBuildAllocationsTable.tsx:41 @@ -5523,28 +5777,28 @@ msgstr "生產訂單" #~ msgid "New Build Order" #~ msgstr "New Build Order" -#: src/pages/company/CompanyDetail.tsx:100 +#: src/pages/company/CompanyDetail.tsx:99 msgid "Website" msgstr "網站" -#: src/pages/company/CompanyDetail.tsx:108 +#: src/pages/company/CompanyDetail.tsx:107 msgid "Phone Number" msgstr "電話號碼" -#: src/pages/company/CompanyDetail.tsx:115 +#: src/pages/company/CompanyDetail.tsx:114 msgid "Email Address" msgstr "電子郵件地址" -#: src/pages/company/CompanyDetail.tsx:125 +#: src/pages/company/CompanyDetail.tsx:124 msgid "Default Currency" msgstr "默認貨幣單位" -#: src/pages/company/CompanyDetail.tsx:130 +#: src/pages/company/CompanyDetail.tsx:129 #: src/pages/company/SupplierDetail.tsx:8 #: src/pages/company/SupplierPartDetail.tsx:129 #: src/pages/company/SupplierPartDetail.tsx:235 #: src/pages/company/SupplierPartDetail.tsx:357 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:133 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:139 #: src/tables/company/CompanyTable.tsx:101 #: src/tables/part/PartPurchaseOrdersTable.tsx:42 #: src/tables/purchasing/PurchaseOrderTable.tsx:118 @@ -5552,16 +5806,17 @@ msgstr "默認貨幣單位" msgid "Supplier" msgstr "供應商" -#: src/pages/company/CompanyDetail.tsx:136 +#: src/pages/company/CompanyDetail.tsx:135 #: src/pages/company/ManufacturerDetail.tsx:8 #: src/pages/company/ManufacturerPartDetail.tsx:103 #: src/pages/company/ManufacturerPartDetail.tsx:265 #: src/pages/company/SupplierPartDetail.tsx:151 #: src/tables/company/CompanyTable.tsx:106 +#: src/tables/purchasing/SupplierPartTable.tsx:76 msgid "Manufacturer" msgstr "製造商" -#: src/pages/company/CompanyDetail.tsx:142 +#: src/pages/company/CompanyDetail.tsx:141 #: src/pages/company/CustomerDetail.tsx:8 #: src/pages/part/pricing/SaleHistoryPanel.tsx:31 #: src/pages/sales/ReturnOrderDetail.tsx:104 @@ -5575,7 +5830,7 @@ msgstr "製造商" msgid "Customer" msgstr "客户" -#: src/pages/company/CompanyDetail.tsx:175 +#: src/pages/company/CompanyDetail.tsx:174 msgid "Company Details" msgstr "" @@ -5583,7 +5838,11 @@ msgstr "" #~ msgid "Edit company" #~ msgstr "Edit company" -#: src/pages/company/CompanyDetail.tsx:181 +#: src/pages/company/CompanyDetail.tsx:180 +msgid "Supplied Parts" +msgstr "已提供的零件" + +#: src/pages/company/CompanyDetail.tsx:189 msgid "Manufactured Parts" msgstr "製成零件" @@ -5591,24 +5850,20 @@ msgstr "製成零件" #~ msgid "Delete company" #~ msgstr "Delete company" -#: src/pages/company/CompanyDetail.tsx:190 -msgid "Supplied Parts" -msgstr "已提供的零件" - -#: src/pages/company/CompanyDetail.tsx:237 +#: src/pages/company/CompanyDetail.tsx:236 msgid "Assigned Stock" msgstr "已分配的庫存" -#: src/pages/company/CompanyDetail.tsx:277 +#: src/pages/company/CompanyDetail.tsx:276 #: src/tables/company/CompanyTable.tsx:87 msgid "Edit Company" msgstr "編輯公司" -#: src/pages/company/CompanyDetail.tsx:285 +#: src/pages/company/CompanyDetail.tsx:284 msgid "Delete Company" msgstr "刪除該公司" -#: src/pages/company/CompanyDetail.tsx:295 +#: src/pages/company/CompanyDetail.tsx:294 msgid "Company Actions" msgstr "公司操作" @@ -5647,13 +5902,6 @@ msgstr "製造商零件詳情" msgid "Parameters" msgstr "參數" -#: src/pages/company/ManufacturerPartDetail.tsx:177 -#: src/pages/part/PartDetail.tsx:560 -#: src/pages/part/PartSupplierDetail.tsx:15 -#: src/pages/purchasing/PurchasingIndex.tsx:32 -msgid "Suppliers" -msgstr "供應商" - #: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:86 msgid "Edit Manufacturer Part" @@ -5716,13 +5964,13 @@ msgid "Supplier Part Details" msgstr "供應商零件詳情" #: src/pages/company/SupplierPartDetail.tsx:252 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:340 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:346 msgid "Received Stock" msgstr "接收庫存" #: src/pages/company/SupplierPartDetail.tsx:276 #: src/pages/part/PartPricingPanel.tsx:113 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:208 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:232 msgid "Supplier Pricing" msgstr "供應商價格" @@ -5882,7 +6130,7 @@ msgstr "關鍵詞" #: src/pages/part/PartDetail.tsx:257 #: src/tables/bom/BomTable.tsx:325 #: src/tables/build/BuildLineTable.tsx:293 -#: src/tables/part/PartTable.tsx:296 +#: src/tables/part/PartTable.tsx:294 #: src/tables/sales/SalesOrderLineItemTable.tsx:127 msgid "Available Stock" msgstr "可用庫存" @@ -5942,7 +6190,7 @@ msgstr "生產中" #: src/pages/part/PartDetail.tsx:336 #: src/tables/part/ParametricPartTable.tsx:229 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:184 msgid "Locked" msgstr "已鎖定" @@ -5982,7 +6230,7 @@ msgid "Virtual Part" msgstr "虛擬零件" #: src/pages/part/PartDetail.tsx:393 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:234 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:240 #: src/pages/sales/ReturnOrderDetail.tsx:204 #: src/pages/sales/SalesOrderDetail.tsx:216 #: src/tables/ColumnRenderers.tsx:265 @@ -6003,8 +6251,8 @@ msgstr "默認供應商" #: src/pages/part/PartDetail.tsx:424 #: src/pages/part/pricing/BomPricingPanel.tsx:113 -#: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:163 +#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "價格範圍" @@ -6070,8 +6318,8 @@ msgid "Edit Part" msgstr "編輯零件" #: src/pages/part/PartDetail.tsx:832 -#: src/tables/part/PartTable.tsx:339 -#: src/tables/part/PartTable.tsx:368 +#: src/tables/part/PartTable.tsx:337 +#: src/tables/part/PartTable.tsx:366 msgid "Add Part" msgstr "添加零件" @@ -6110,7 +6358,7 @@ msgid "Order Stock" msgstr "訂單庫存" #: src/pages/part/PartDetail.tsx:938 -#: src/tables/part/PartTable.tsx:351 +#: src/tables/part/PartTable.tsx:349 msgid "Part Actions" msgstr "零件選項" @@ -6127,7 +6375,7 @@ msgid "No pricing data found for this part." msgstr "未找到此零件的定價數據" #: src/pages/part/PartPricingPanel.tsx:87 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:292 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:325 msgid "Pricing Overview" msgstr "定價概覽" @@ -6136,33 +6384,33 @@ msgid "Purchase History" msgstr "採購記錄" #: src/pages/part/PartPricingPanel.tsx:107 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:187 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:204 msgid "Internal Pricing" msgstr "內部價格" #: src/pages/part/PartPricingPanel.tsx:122 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:194 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:214 msgid "BOM Pricing" msgstr "物料清單價格" #: src/pages/part/PartPricingPanel.tsx:129 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:215 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:242 msgid "Variant Pricing" msgstr "變體價格" #: src/pages/part/PartPricingPanel.tsx:141 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:251 msgid "Sale Pricing" msgstr "銷售價格" #: src/pages/part/PartPricingPanel.tsx:147 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:229 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 msgid "Sale History" msgstr "銷售記錄" #: src/pages/part/PartSchedulingDetail.tsx:47 #: src/pages/part/PartSchedulingDetail.tsx:301 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:155 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:170 msgid "Maximum" msgstr "最大值" @@ -6173,7 +6421,7 @@ msgstr "排定" #: src/pages/part/PartSchedulingDetail.tsx:53 #: src/pages/part/PartSchedulingDetail.tsx:296 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:143 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:158 msgid "Minimum" msgstr "最小值" @@ -6236,20 +6484,15 @@ msgid "New Stocktake Report" msgstr "盤點報告" #: src/pages/part/PartStocktakeDetail.tsx:268 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:327 msgid "Minimum Value" msgstr "最小值" #: src/pages/part/PartStocktakeDetail.tsx:274 -#: src/pages/part/pricing/PricingOverviewPanel.tsx:295 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:328 msgid "Maximum Value" msgstr "最大值" -#: src/pages/part/PartSupplierDetail.tsx:23 -#: src/pages/purchasing/PurchasingIndex.tsx:43 -msgid "Manufacturers" -msgstr "製造商" - #: src/pages/part/pricing/BomPricingPanel.tsx:87 #: src/pages/part/pricing/BomPricingPanel.tsx:177 #: src/tables/ColumnRenderers.tsx:315 @@ -6267,7 +6510,7 @@ msgstr "總價" #: src/pages/part/pricing/BomPricingPanel.tsx:141 #: src/tables/bom/UsedInTable.tsx:49 #: src/tables/build/BuildLineTable.tsx:303 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "組件" @@ -6277,13 +6520,13 @@ msgstr "組件" #: src/pages/part/pricing/BomPricingPanel.tsx:115 #: src/pages/part/pricing/VariantPricingPanel.tsx:37 -#: src/pages/part/pricing/VariantPricingPanel.tsx:97 +#: src/pages/part/pricing/VariantPricingPanel.tsx:99 msgid "Minimum Price" msgstr "最低價格" #: src/pages/part/pricing/BomPricingPanel.tsx:116 #: src/pages/part/pricing/VariantPricingPanel.tsx:45 -#: src/pages/part/pricing/VariantPricingPanel.tsx:98 +#: src/pages/part/pricing/VariantPricingPanel.tsx:100 msgid "Maximum Price" msgstr "最高價格" @@ -6344,65 +6587,65 @@ msgstr "批發價" msgid "Price" msgstr "價格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:67 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:72 msgid "Refreshing pricing data" msgstr "刷新定價數據" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:87 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:92 msgid "Pricing data updated" msgstr "更新定價數據" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:94 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:99 msgid "Failed to update pricing data" msgstr "更新定價數據失敗" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:103 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:127 msgid "Edit Pricing" msgstr "編輯價格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:124 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:139 msgid "Pricing Category" msgstr "價格類別" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:173 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:188 msgid "Override Pricing" msgstr "覆蓋價格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:180 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:196 msgid "Overall Pricing" msgstr "總價" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:201 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:222 msgid "Purchase Pricing" msgstr "採購價格" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:248 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:281 #: src/pages/stock/StockDetail.tsx:164 #: src/tables/stock/StockItemTable.tsx:284 msgid "Last Updated" msgstr "最近更新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:252 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:285 msgid "Pricing Not Set" msgstr "定價未設置" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:253 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:286 msgid "Pricing data has not been calculated for this part" msgstr "此部分尚未計算定價數據" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:257 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:290 msgid "Pricing Actions" msgstr "定價操作" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:260 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:293 msgid "Refresh" msgstr "刷新" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:261 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:294 msgid "Refresh pricing data" msgstr "刷新定價數據" -#: src/pages/part/pricing/PricingOverviewPanel.tsx:276 +#: src/pages/part/pricing/PricingOverviewPanel.tsx:309 msgid "Edit pricing data" msgstr "編輯定價數據" @@ -6441,7 +6684,7 @@ msgid "Supplier Price" msgstr "供應商價格" #: src/pages/part/pricing/VariantPricingPanel.tsx:30 -#: src/pages/part/pricing/VariantPricingPanel.tsx:94 +#: src/pages/part/pricing/VariantPricingPanel.tsx:96 msgid "Variant Part" msgstr "變體零件" @@ -6449,13 +6692,13 @@ msgstr "變體零件" msgid "Edit Purchase Order" msgstr "編輯採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:99 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:108 #: src/tables/purchasing/PurchaseOrderTable.tsx:163 #: src/tables/purchasing/PurchaseOrderTable.tsx:176 msgid "Add Purchase Order" msgstr "添加採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:124 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:130 msgid "Supplier Reference" msgstr "供應商參考" @@ -6465,24 +6708,24 @@ msgstr "供應商參考" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:164 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:170 #: src/pages/sales/ReturnOrderDetail.tsx:141 #: src/pages/sales/SalesOrderDetail.tsx:144 msgid "Completed Line Items" msgstr "已完成行項目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:173 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 #: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:236 msgid "Destination" msgstr "目的地" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:179 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 #: src/pages/sales/ReturnOrderDetail.tsx:148 #: src/pages/sales/SalesOrderDetail.tsx:161 msgid "Order Currency" msgstr "訂單貨幣" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:185 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:191 #: src/pages/sales/ReturnOrderDetail.tsx:155 #: src/pages/sales/SalesOrderDetail.tsx:167 msgid "Total Cost" @@ -6494,13 +6737,13 @@ msgstr "總成本" #~ msgid "Created On" #~ msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:247 #: src/pages/sales/ReturnOrderDetail.tsx:212 #: src/pages/sales/SalesOrderDetail.tsx:223 msgid "Issue Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:272 #: src/pages/sales/ReturnOrderDetail.tsx:236 #: src/pages/sales/SalesOrderDetail.tsx:246 #: src/tables/ColumnRenderers.tsx:273 @@ -6509,37 +6752,37 @@ msgstr "" msgid "Completion Date" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:296 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:302 #: src/pages/sales/ReturnOrderDetail.tsx:266 -#: src/pages/sales/SalesOrderDetail.tsx:306 +#: src/pages/sales/SalesOrderDetail.tsx:312 msgid "Order Details" msgstr "訂單細節" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:324 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:330 #: src/pages/sales/ReturnOrderDetail.tsx:294 -#: src/pages/sales/SalesOrderDetail.tsx:337 +#: src/pages/sales/SalesOrderDetail.tsx:343 msgid "Extra Line Items" msgstr "額外行項目" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:366 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:372 msgid "Issue Purchase Order" msgstr "發佈採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:374 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:380 msgid "Cancel Purchase Order" msgstr "取消採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:382 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:388 msgid "Hold Purchase Order" msgstr "掛起採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:390 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:396 msgid "Complete Purchase Order" msgstr "完成採購訂單" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:445 -#: src/pages/sales/ReturnOrderDetail.tsx:442 -#: src/pages/sales/SalesOrderDetail.tsx:494 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:451 +#: src/pages/sales/ReturnOrderDetail.tsx:448 +#: src/pages/sales/SalesOrderDetail.tsx:500 msgid "Order Actions" msgstr "訂單操作" @@ -6555,35 +6798,31 @@ msgid "Edit Return Order" msgstr "編輯退貨訂單" #: src/pages/sales/ReturnOrderDetail.tsx:349 +#~ msgid "Order canceled" +#~ msgstr "Order canceled" + +#: src/pages/sales/ReturnOrderDetail.tsx:358 #: src/tables/sales/ReturnOrderTable.tsx:172 #: src/tables/sales/ReturnOrderTable.tsx:185 msgid "Add Return Order" msgstr "添加退貨訂單" -#: src/pages/sales/ReturnOrderDetail.tsx:349 -#~ msgid "Order canceled" -#~ msgstr "Order canceled" - -#: src/pages/sales/ReturnOrderDetail.tsx:361 +#: src/pages/sales/ReturnOrderDetail.tsx:367 msgid "Issue Return Order" msgstr "發佈退貨訂單" -#: src/pages/sales/ReturnOrderDetail.tsx:369 +#: src/pages/sales/ReturnOrderDetail.tsx:375 msgid "Cancel Return Order" msgstr "取消退貨訂單" -#: src/pages/sales/ReturnOrderDetail.tsx:377 +#: src/pages/sales/ReturnOrderDetail.tsx:383 msgid "Hold Return Order" msgstr "掛起退貨訂單" -#: src/pages/sales/ReturnOrderDetail.tsx:385 +#: src/pages/sales/ReturnOrderDetail.tsx:391 msgid "Complete Return Order" msgstr "完成退貨訂單" -#: src/pages/sales/SalesIndex.tsx:40 -msgid "Customers" -msgstr "客户" - #: src/pages/sales/SalesOrderDetail.tsx:153 msgid "Completed Shipments" msgstr "完成配送" @@ -6596,46 +6835,46 @@ msgstr "完成配送" msgid "Edit Sales Order" msgstr "編輯銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:292 +#: src/pages/sales/SalesOrderDetail.tsx:301 #: src/tables/sales/SalesOrderTable.tsx:126 #: src/tables/sales/SalesOrderTable.tsx:139 msgid "Add Sales Order" msgstr "添加銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:353 +#: src/pages/sales/SalesOrderDetail.tsx:359 #: src/tables/sales/SalesOrderTable.tsx:173 msgid "Shipments" msgstr "配送" -#: src/pages/sales/SalesOrderDetail.tsx:395 +#: src/pages/sales/SalesOrderDetail.tsx:401 msgid "Issue Sales Order" msgstr "發佈銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:403 +#: src/pages/sales/SalesOrderDetail.tsx:409 msgid "Cancel Sales Order" msgstr "取消銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:411 +#: src/pages/sales/SalesOrderDetail.tsx:417 msgid "Hold Sales Order" msgstr "掛起銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:419 +#: src/pages/sales/SalesOrderDetail.tsx:425 msgid "Ship Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:421 +#: src/pages/sales/SalesOrderDetail.tsx:427 msgid "Ship this order?" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:422 +#: src/pages/sales/SalesOrderDetail.tsx:428 msgid "Order shipped" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:430 +#: src/pages/sales/SalesOrderDetail.tsx:436 msgid "Complete Sales Order" msgstr "完成銷售訂單" -#: src/pages/sales/SalesOrderDetail.tsx:469 +#: src/pages/sales/SalesOrderDetail.tsx:475 msgid "Ship Order" msgstr "裝貨單" @@ -7172,7 +7411,7 @@ msgid "Filter" msgstr "過濾器" #: src/tables/FilterSelectDrawer.tsx:281 -#: src/tables/InvenTreeTableHeader.tsx:214 +#: src/tables/InvenTreeTableHeader.tsx:227 msgid "Table Filters" msgstr "表格篩選" @@ -7245,20 +7484,20 @@ msgid "Are you sure you want to delete the selected items?" msgstr "確定要刪除所選的項目嗎?" #: src/tables/InvenTreeTableHeader.tsx:104 -#: src/tables/plugin/PluginListTable.tsx:306 +#: src/tables/plugin/PluginListTable.tsx:304 msgid "This action cannot be undone" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:142 +#: src/tables/InvenTreeTableHeader.tsx:154 msgid "Custom table filters are active" msgstr "" -#: src/tables/InvenTreeTableHeader.tsx:169 +#: src/tables/InvenTreeTableHeader.tsx:180 #: src/tables/general/BarcodeScanTable.tsx:93 msgid "Delete selected records" msgstr "刪除選中的記錄" -#: src/tables/InvenTreeTableHeader.tsx:188 +#: src/tables/InvenTreeTableHeader.tsx:200 msgid "Refresh data" msgstr "刷新數據" @@ -7301,7 +7540,7 @@ msgid "Building" msgstr "正在生產" #: src/tables/bom/BomTable.tsx:256 -#: src/tables/part/PartTable.tsx:155 +#: src/tables/part/PartTable.tsx:153 #: src/tables/sales/SalesOrderLineItemTable.tsx:174 #: src/tables/stock/StockItemTable.tsx:212 msgid "Stock Information" @@ -7418,7 +7657,7 @@ msgid "Show consumable items" msgstr "顯示可消耗項目" #: src/tables/bom/BomTable.tsx:360 -#: src/tables/part/PartTable.tsx:290 +#: src/tables/part/PartTable.tsx:288 msgid "Has Pricing" msgstr "是否有價格" @@ -7497,7 +7736,7 @@ msgstr "無法編輯材料清單,因為零件已鎖定" #: src/tables/bom/UsedInTable.tsx:33 #: src/tables/build/BuildLineTable.tsx:201 #: src/tables/part/ParametricPartTable.tsx:234 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:190 #: src/tables/stock/StockItemTable.tsx:317 msgid "Assembly" msgstr "裝配" @@ -7507,7 +7746,7 @@ msgid "Show active assemblies" msgstr "顯示活動裝配體" #: src/tables/bom/UsedInTable.tsx:90 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:214 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "可追蹤" @@ -7601,7 +7840,7 @@ msgid "Show optional lines" msgstr "顯示可選項目" #: src/tables/build/BuildLineTable.tsx:206 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:208 msgid "Testable" msgstr "可測試" @@ -8255,7 +8494,7 @@ msgid "You are subscribed to notifications for this category" msgstr "" #: src/tables/part/PartCategoryTable.tsx:80 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "包含子類別" @@ -8338,7 +8577,7 @@ msgid "Show templates with choices" msgstr "顯示有選項的模板" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:220 msgid "Has Units" msgstr "有單位" @@ -8384,141 +8623,141 @@ msgstr "" msgid "Minimum stock" msgstr "最低庫存數" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "按零件活動狀態篩選" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "按零件鎖定狀態篩選" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "按裝配屬性篩選" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "包括子類別中的零件" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "按組件屬性篩選" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by testable attribute" msgstr "按可跟蹤屬性篩選" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by trackable attribute" msgstr "按可跟蹤屬性篩選" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have units" msgstr "按擁有單位的零件篩選" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:226 msgid "Has IPN" msgstr "有內部零件編碼" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have an internal part number" msgstr "按具有內部零件編號的零件篩選" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:232 msgid "Has Stock" msgstr "有庫存" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have stock" msgstr "按有庫存的零件篩選" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which have low stock" msgstr "按庫存少的零件篩選" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:244 msgid "Purchaseable" msgstr "可購買" -#: src/tables/part/PartTable.tsx:247 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are purchaseable" msgstr "按可購買的零件篩選" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:250 msgid "Salable" msgstr "可銷售" -#: src/tables/part/PartTable.tsx:253 +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are salable" msgstr "按可出售的零件篩選" -#: src/tables/part/PartTable.tsx:258 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 #: src/tables/part/PartVariantTable.tsx:25 msgid "Virtual" msgstr "虛擬" -#: src/tables/part/PartTable.tsx:259 +#: src/tables/part/PartTable.tsx:257 msgid "Filter by parts which are virtual" msgstr "按虛擬零件篩選" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:261 msgid "Not Virtual" msgstr "非虛擬的" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:266 msgid "Is Template" msgstr "是模板" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:267 msgid "Filter by parts which are templates" msgstr "按模板部分篩選零件" -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:272 msgid "Is Variant" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:273 msgid "Filter by parts which are variants" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:278 msgid "Is Revision" msgstr "是否修訂" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:279 msgid "Filter by parts which are revisions" msgstr "按修訂零件篩選" -#: src/tables/part/PartTable.tsx:285 +#: src/tables/part/PartTable.tsx:283 msgid "Has Revisions" msgstr "有修訂" -#: src/tables/part/PartTable.tsx:286 +#: src/tables/part/PartTable.tsx:284 msgid "Filter by parts which have revisions" msgstr "按有修訂的零件篩選" -#: src/tables/part/PartTable.tsx:291 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts which have pricing information" msgstr "按有定價信息的零件篩選" -#: src/tables/part/PartTable.tsx:297 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have available stock" msgstr "按有可用庫存的零件篩選" -#: src/tables/part/PartTable.tsx:303 +#: src/tables/part/PartTable.tsx:301 msgid "Filter by parts to which the user is subscribed" msgstr "按用户訂閲的零件篩選" -#: src/tables/part/PartTable.tsx:308 +#: src/tables/part/PartTable.tsx:306 msgid "Has Stocktake" msgstr "有盤點" -#: src/tables/part/PartTable.tsx:309 +#: src/tables/part/PartTable.tsx:307 msgid "Filter by parts which have stocktake information" msgstr "按有盤點信息的零件篩選" -#: src/tables/part/PartTable.tsx:358 +#: src/tables/part/PartTable.tsx:356 msgid "Order selected parts" msgstr "" @@ -8603,7 +8842,7 @@ msgstr "查看父部分" msgid "Part templates cannot be edited, as the part is locked" msgstr "模板參數無法編輯,因為組件已鎖定" -#: src/tables/part/PartThumbTable.tsx:202 +#: src/tables/part/PartThumbTable.tsx:223 msgid "Select" msgstr "選擇" @@ -8708,19 +8947,19 @@ msgstr "描述不可用." #~ msgid "Edit plugin" #~ msgstr "Edit plugin" -#: src/tables/plugin/PluginListTable.tsx:145 +#: src/tables/plugin/PluginListTable.tsx:143 msgid "Confirm plugin activation" msgstr "確認插件激活" -#: src/tables/plugin/PluginListTable.tsx:146 +#: src/tables/plugin/PluginListTable.tsx:144 msgid "Confirm plugin deactivation" msgstr "確認插件停用" -#: src/tables/plugin/PluginListTable.tsx:151 +#: src/tables/plugin/PluginListTable.tsx:149 msgid "The selected plugin will be activated" msgstr "所選插件將被激活" -#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:150 msgid "The selected plugin will be deactivated" msgstr "所選插件將被停用" @@ -8733,19 +8972,19 @@ msgstr "所選插件將被停用" #~ msgid "Package information" #~ msgstr "Package information" -#: src/tables/plugin/PluginListTable.tsx:170 +#: src/tables/plugin/PluginListTable.tsx:168 msgid "Deactivate" msgstr "停用" -#: src/tables/plugin/PluginListTable.tsx:184 +#: src/tables/plugin/PluginListTable.tsx:182 msgid "Activate" msgstr "激活" -#: src/tables/plugin/PluginListTable.tsx:185 +#: src/tables/plugin/PluginListTable.tsx:183 msgid "Activate selected plugin" msgstr "激活所選插件" -#: src/tables/plugin/PluginListTable.tsx:197 +#: src/tables/plugin/PluginListTable.tsx:195 msgid "Update selected plugin" msgstr "更新所選插件" @@ -8753,76 +8992,76 @@ msgstr "更新所選插件" #~ msgid "Plugin settings" #~ msgstr "Plugin settings" -#: src/tables/plugin/PluginListTable.tsx:215 +#: src/tables/plugin/PluginListTable.tsx:213 #: src/tables/stock/InstalledItemsTable.tsx:108 msgid "Uninstall" msgstr "卸載" -#: src/tables/plugin/PluginListTable.tsx:216 +#: src/tables/plugin/PluginListTable.tsx:214 msgid "Uninstall selected plugin" msgstr "卸載所選插件" -#: src/tables/plugin/PluginListTable.tsx:234 +#: src/tables/plugin/PluginListTable.tsx:232 msgid "Delete selected plugin configuration" msgstr "刪除選中的插件配置" -#: src/tables/plugin/PluginListTable.tsx:250 +#: src/tables/plugin/PluginListTable.tsx:248 msgid "Activate Plugin" msgstr "激活插件" -#: src/tables/plugin/PluginListTable.tsx:257 +#: src/tables/plugin/PluginListTable.tsx:255 msgid "The plugin was activated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:258 +#: src/tables/plugin/PluginListTable.tsx:256 msgid "The plugin was deactivated" msgstr "" -#: src/tables/plugin/PluginListTable.tsx:271 +#: src/tables/plugin/PluginListTable.tsx:269 msgid "Install plugin" msgstr "安裝插件" -#: src/tables/plugin/PluginListTable.tsx:284 +#: src/tables/plugin/PluginListTable.tsx:282 msgid "Install" msgstr "安裝" -#: src/tables/plugin/PluginListTable.tsx:285 +#: src/tables/plugin/PluginListTable.tsx:283 msgid "Plugin installed successfully" msgstr "插件安裝成功" -#: src/tables/plugin/PluginListTable.tsx:290 +#: src/tables/plugin/PluginListTable.tsx:288 msgid "Uninstall Plugin" msgstr "卸載插件" -#: src/tables/plugin/PluginListTable.tsx:302 +#: src/tables/plugin/PluginListTable.tsx:300 msgid "Confirm plugin uninstall" msgstr "確認插件卸載" -#: src/tables/plugin/PluginListTable.tsx:305 +#: src/tables/plugin/PluginListTable.tsx:303 msgid "The selected plugin will be uninstalled." msgstr "所選插件將被卸載。" +#: src/tables/plugin/PluginListTable.tsx:308 +msgid "Plugin uninstalled successfully" +msgstr "插件卸載成功" + #: src/tables/plugin/PluginListTable.tsx:308 #~ msgid "This action cannot be undone." #~ msgstr "This action cannot be undone." -#: src/tables/plugin/PluginListTable.tsx:310 -msgid "Plugin uninstalled successfully" -msgstr "插件卸載成功" - -#: src/tables/plugin/PluginListTable.tsx:318 +#: src/tables/plugin/PluginListTable.tsx:316 msgid "Delete Plugin" msgstr "刪除插件" -#: src/tables/plugin/PluginListTable.tsx:319 +#: src/tables/plugin/PluginListTable.tsx:317 msgid "Deleting this plugin configuration will remove all associated settings and data. Are you sure you want to delete this plugin?" msgstr "刪除此插件配置將刪除所有相關的設置和數據。您確定要刪除此插件嗎?" -#: src/tables/plugin/PluginListTable.tsx:332 +#: src/tables/plugin/PluginListTable.tsx:330 msgid "Plugins reloaded" msgstr "插件已重載" -#: src/tables/plugin/PluginListTable.tsx:333 +#: src/tables/plugin/PluginListTable.tsx:331 msgid "Plugins were reloaded successfully" msgstr "插件重載成功" @@ -8830,7 +9069,7 @@ msgstr "插件重載成功" #~ msgid "Deactivate Plugin" #~ msgstr "Deactivate Plugin" -#: src/tables/plugin/PluginListTable.tsx:351 +#: src/tables/plugin/PluginListTable.tsx:349 msgid "Reload Plugins" msgstr "重載插件" @@ -8842,11 +9081,11 @@ msgstr "重載插件" #~ msgid "The following plugin will be deactivated" #~ msgstr "The following plugin will be deactivated" -#: src/tables/plugin/PluginListTable.tsx:358 +#: src/tables/plugin/PluginListTable.tsx:356 msgid "Install Plugin" msgstr "安裝插件" -#: src/tables/plugin/PluginListTable.tsx:375 +#: src/tables/plugin/PluginListTable.tsx:373 msgid "Plugin Detail" msgstr "插件詳情" @@ -8866,11 +9105,11 @@ msgstr "插件詳情" #~ msgid "Error updating plugin" #~ msgstr "Error updating plugin" -#: src/tables/plugin/PluginListTable.tsx:412 +#: src/tables/plugin/PluginListTable.tsx:410 msgid "Sample" msgstr "樣本" -#: src/tables/plugin/PluginListTable.tsx:417 +#: src/tables/plugin/PluginListTable.tsx:415 #: src/tables/stock/StockItemTable.tsx:362 msgid "Installed" msgstr "已安裝"